Patreon responsive + customizations

Patreon website is more suitable for wide screens.

当前为 2024-06-30 提交的版本,查看 最新版本

  1. /* ==UserStyle==
  2. @name Patreon responsive + customizations
  3. @version 1.0.13
  4. @description Patreon website is more suitable for wide screens.
  5. @author BreatFR (https://breat.fr)
  6. @namespace https://gitlab.com/breatfr
  7. @homepageURL https://gitlab.com/breatfr/patreon
  8. @supportURL https://discord.gg/Q8KSHzdBxs
  9. @license AGPL-3.0-or-later; https://www.gnu.org/licenses/agpl-3.0.txt
  10. @preprocessor stylus
  11.  
  12. @var checkbox bigimages "Big images" 1
  13. @var text fontsize "Custom font size" 1.2rem
  14. @var checkbox nojump "No Jump to level up" 1
  15. @var checkbox nocomments "No comments" 0
  16. @var checkbox widemode "Wide mode" 1
  17. ==/UserStyle== */
  18.  
  19. /* === Credits ===
  20. Website https://breat.fr
  21. facebook https://www.facebook.com/breatfroff
  22. mastodon https://mastodon.social/@breat_fr
  23. telegram https://t.me/breatfr
  24. vk https://vk.com/breatfroff
  25. X (twitter) https://x.com/breatfroff
  26. === Credits === */
  27. @-moz-document domain("patreon.com") {
  28. :root {
  29. --fontsize: fontsize;
  30. }
  31. /* Loved */
  32. [data-tag="like-button"][aria-checked="true"] > div > svg path {
  33. fill: #c6374d;
  34. }
  35. /* No double scrollbar */
  36. #__next > .sc-uiqay7-0.cnwZin {
  37. overflow: hidden;
  38. }
  39. /* Custom font size */
  40. :root,
  41. button,
  42. div,
  43. li,
  44. p,
  45. .cLOyGt,
  46. .cuiKYE,
  47. .cQjDCC,
  48. .fxePXf,
  49. .jYEggK {
  50. font-size: fontsize !important;
  51. }
  52. .vWGl {
  53. font-size: calc(var(--fontsize) - .2rem)!important;
  54. }
  55. span > .vWGl {
  56. font-size: inherit !important;
  57. }
  58. .gxOVkK {
  59. font-size: calc(var(--fontsize) - .4rem)!important;
  60. }
  61. if nocomments {
  62. [data-tag="content-card-comment-thread-container"],
  63. .bmnjsr {
  64. display: none !important;
  65. }
  66. }
  67. if nojump {
  68. .sc-jrQzAO.bAzCwM,
  69. .sc-o4u8m1-2 > div > div:nth-child(2),
  70. [data-tag="upgrade-free-membership-button"],
  71. [data-tag="free-membership-upgrade-cta"] {
  72. display: none !important;
  73. height: 0 !important;
  74. max-height: 0 !important;
  75. }
  76. }
  77. if widemode {
  78. section.fZbiny>div,
  79. .bNdQpa,
  80. .bnFcNI,
  81. .cuHeCZ,
  82. .gSEDWh,
  83. .hGVSIy,
  84. .idaEYe,
  85. .kYRjdn,
  86. .lghRlU,
  87. .McnWk,
  88. .PSylB,
  89. .VqdYx {
  90. max-width: 100% !important;
  91. }
  92. .gwGwhu {
  93. padding: 0;
  94. }
  95.  
  96. .bcGqVn {
  97. grid-template-columns: 80% 20%;
  98. }
  99.  
  100. .jwWBqC {
  101. grid-column-end: span 1;
  102. }
  103. .leSNuf:nth-child(odd)> .dGdDmr {
  104. flex-direction: row-reverse !important;
  105. }
  106. .sc-o4u8m1-4.hBubtn > div > div > h2 {
  107. margin-top: 1rem;
  108. }
  109. .dzWUmz,
  110. .cgDWfu {
  111. max-width: max-content !important;
  112. }
  113. }
  114. }
  115.  
  116. @-moz-document url("https://www.patreon.com/home") {
  117. if bigimages {
  118. * {
  119. aspect-ratio: auto !important;
  120. }
  121. .dofSdt img {
  122. min-width: 100% !important;
  123. object-fit: cover !important;
  124. }
  125. [data-tag="launcher-post-card"] > div > div > div > [elevation="subtle"] div:not([data-tag="post-details"] div,[data-tag="content-card-comment-thread-container"] div,div[width="fluid"] div,[data-tag="locked-badge-button"] div,[data-tag="chip-container"],.jhLQmG,.jhLQmG div,.dgQBHC) {
  126. display: flex !important;
  127. flex-basis: 100% !important;
  128. flex-direction: column !important;
  129. max-width: 100% !important;
  130. }
  131. img,
  132. div[elevation="subtle"] > div,
  133. .djipQD > .image-grid {
  134. display: block !important;
  135. height: auto !important;
  136. max-height: 100% !important;
  137. min-width: 100% !important;
  138. object-fit: contain !important;
  139. }
  140. img[loading="eager"] {
  141. width: auto !important;
  142. }
  143. .image-grid + .image-grid {
  144. margin-top: 2px;
  145. }
  146. .image-carousel {
  147. height: 112px;
  148. object-fit: contain;
  149. width: auto !important;
  150. }
  151. /* Little unblur */
  152. .dgyaSI {
  153. background: transparent !important;
  154. opacity: 0 !important;
  155. }
  156. .image-grid > img {
  157. background: transparent !important;
  158. object-fit: contain !important;
  159. min-width: 100% !important;
  160. }
  161. [data-tag="locked-badge-button"] p {
  162. padding-right: 3em;
  163. }
  164. [width="fluid"] a {
  165. max-width: 96% !important;
  166. overflow: hidden !important;
  167. }
  168. header {
  169. height: 0 !important;
  170. }
  171. a,
  172. img,
  173. .jQZWvF {
  174. overflow: hidden !important;
  175. }
  176. }
  177. }
  178.  
  179. @-moz-document regexp("https://www\\.patreon\\.com/[^/]+/about") {
  180. div.sc-xac35p-1.jhLQmG {
  181. display: flex !important;
  182. flex-direction: row !important;
  183. justify-content: space-between !important;
  184. width: 100% !important;
  185. }
  186. header {
  187. height: 417px !important;
  188. }
  189. .sc-gIBqdA.hVkHgO > div > div.sc-jrQzAO.bmnjsr {
  190. padding-right: 2em;
  191. }
  192. }
  193.  
  194. @-moz-document regexp("https://www\\.patreon\\.com/[^/]+/posts") {
  195. if bigimages {
  196. * {
  197. aspect-ratio: auto !important;
  198. }
  199. .dofSdt img {
  200. min-width: 100% !important;
  201. object-fit: cover !important;
  202. }
  203. [data-tag="post-card"] > div > div > [elevation="subtle"] div:not([data-tag="post-details"] div,[data-tag="content-card-comment-thread-container"] div,div[width="fluid"] div,[data-tag="locked-badge-button"] div,[data-tag="chip-container"],.jhLQmG,.jhLQmG div,.dgQBHC) {
  204. display: flex !important;
  205. flex-basis: 100% !important;
  206. flex-direction: column !important;
  207. max-width: 100% !important;
  208. }
  209. img,
  210. div[elevation="subtle"] > div,
  211. .djipQD > .image-grid {
  212. display: block !important;
  213. height: auto !important;
  214. max-height: 100% !important;
  215. max-width: 100% !important;
  216. min-width: 100% !important;
  217. object-fit: contain !important;
  218. }
  219. img[loading="eager"] {
  220. aspect-ratio: 1 / 1 !important;
  221. height: 100% !important;
  222. object-fit: cover !important;
  223. }
  224. .image-grid + .image-grid {
  225. margin-top: 2px;
  226. }
  227. .image-carousel {
  228. height: 112px;
  229. object-fit: contain;
  230. width: auto !important;
  231. }
  232. /* Little unblur */
  233. .dgyaSI {
  234. background: transparent !important;
  235. opacity: 0 !important;
  236. }
  237. .image-grid > img {
  238. background: transparent !important;
  239. object-fit: contain !important;
  240. min-width: 100% !important;
  241. }
  242. [data-tag="locked-badge-button"] p {
  243. padding-right: 3em;
  244. }
  245. [width="fluid"] a {
  246. max-width: 96% !important;
  247. overflow: hidden !important;
  248. }
  249. header {
  250. height: 417px !important;
  251. }
  252. a,
  253. img,
  254. .jQZWvF {
  255. overflow: hidden !important;
  256. }
  257. }
  258. }
  259.  
  260. @-moz-document url-prefix("https://www.patreon.com/posts") {
  261. if bigimages {
  262. * {
  263. aspect-ratio: auto !important;
  264. }
  265. .dofSdt img {
  266. min-width: 100% !important;
  267. object-fit: cover !important;
  268. }
  269. [data-tag="post-card"] > div > div > [elevation="subtle"] div:not([data-tag="post-details"] div,[data-tag="content-card-comment-thread-container"] div,div[width="fluid"] div,[data-tag="locked-badge-button"] div,[data-tag="chip-container"],.jhLQmG,.jhLQmG div,.dgQBHC) {
  270. display: flex !important;
  271. flex-basis: 100% !important;
  272. flex-direction: column !important;
  273. max-width: 100% !important;
  274. }
  275. img,
  276. div[elevation="subtle"] > div,
  277. .djipQD > .image-grid {
  278. height: auto !important;
  279. max-height: 100% !important;
  280. max-width: 100% !important;
  281. min-width: 100% !important;
  282. object-fit: contain !important;
  283. }
  284. img[loading="eager"] {
  285. aspect-ratio: 1 / 1 !important;
  286. height: 100% !important;
  287. object-fit: cover !important;
  288. }
  289. .image-grid + .image-grid {
  290. margin-top: 2px;
  291. }
  292. .image-carousel {
  293. height: 112px;
  294. object-fit: contain;
  295. width: auto !important;
  296. }
  297. /* Little unblur */
  298. .dgyaSI {
  299. background: transparent !important;
  300. opacity: 0 !important;
  301. }
  302. .image-grid > img {
  303. background: transparent !important;
  304. object-fit: contain !important;
  305. min-width: 100% !important;
  306. }
  307. [data-tag="locked-badge-button"] p {
  308. padding-right: 3em;
  309. }
  310. [width="fluid"] a {
  311. max-width: 96% !important;
  312. overflow: hidden !important;
  313. }
  314. header {
  315. height: 0 !important;
  316. }
  317. a,
  318. img,
  319. .jQZWvF {
  320. overflow: hidden !important;
  321. }
  322. }
  323. }