User:Volker E. (WMF)/dark-mode.css
Appearance
Code that you insert on this page could contain malicious content capable of compromising your account. If you import a script from another page with "importScript", "mw.loader.load", "iusc", or "lusc", take note that this causes you to dynamically load a remote script, which could be changed by others. Editors are responsible for all edits and actions they perform, including by scripts. User scripts are not centrally supported and may malfunction or become inoperable due to software changes. A guide to help you find broken scripts is available. If you are unsure whether code you are adding to this page is safe, you can ask at the appropriate village pump. This code will be executed when previewing this page. |
This user script seems to have a documentation page at User:Volker E. (WMF)/dark-mode and an accompanying .js page at User:Volker E. (WMF)/dark-mode.js. |
/* WikimediaUI Dark Mode
*
* Wikimedia Design Team 2019-2021
* Original authors:
* - Volker E.
* - Alex Hollender
* - MusikAnimal
* - Carolyn Li-Madeo
* - Jdlrobson
*
* Last updated: 2021-04-20
*
*/
@media screen {
/* Switch to dark mode */
/* Inspired by MusikAnimal */
#pt-darkmode a:before {
/* Moon icon */
content: '\263E';
display: inline-block;
padding: 0 2px;
}
/* Switch to default mode */
.client-dark-mode #pt-darkmode a:before {
/* Sun icon */
content: '\2600';
font-weight: bold;
}
/* Would be nice if it were that easy. Will have to find opposite color for invert filter to make it dark
.client-dark-mode {
background-color: #000;
}
*/
/* Filter needs to reside on `html`: `html.client-dark-mode`, see https://phabricator.wikimedia.org/T221425#5153917 */
.client-dark-mode,
/* All other selectors have `filter` double-applied to turn back to “normal” by inheritance */
.client-dark-mode img,
.client-dark-mode video,
.client-dark-mode svg,
.client-dark-mode iframe,
.client-dark-mode .mw-no-invert,
.client-dark-mode .mwe-math-element,
.client-dark-mode .wvui-typeahead-suggestion__thumbnail,
/* Extensions */
.client-dark-mode .cx-slitem__image,
.client-dark-mode .mw-mmv-overlay,
.client-dark-mode .mw-mmv-pre-image,
.client-dark-mode .mw-kartographer-map,
.client-dark-mode .mw-kartographer-mapDialog-map,
.client-dark-mode .ext-related-articles-card-list .ext-related-articles-card-thumb {
filter: invert( 1 ) hue-rotate( 180deg );
}
/* Reset overrides */
.client-dark-mode .skin-vector .mw-logo-wordmark,
.client-dark-mode .skin-vector .mw-logo-tagline,
.client-dark-mode .wvui-icon svg {
filter: none;
}
/* Backgrounds */
.client-dark-mode table,
.client-dark-mode table.ambox-content,
.client-dark-mode table.toccolours,
.client-dark-mode .mw-notification,
.client-dark-mode .mwe-popups,
.client-dark-mode .infobox,
.client-dark-mode .toc,
.client-dark-mode .thumbinner,
.client-dark-mode .wikitable,
.client-dark-mode .cbnnr-main,
.client-dark-mode .cx-callout,
.client-dark-mode #simpleSearch,
.client-dark-mode #simpleSearch #searchInput,
.client-dark-mode #siteNotice #centralNotice .cnotice {
background-color: #ddd;
}
/* Borders */
.client-dark-mode body,
.client-dark-mode h1,
.client-dark-mode h2,
.client-dark-mode h3,
.client-dark-mode h4,
.client-dark-mode h5,
.client-dark-mode h6,
.client-dark-mode table.ambox-content,
.client-dark-mode table.toccolours,
.client-dark-mode .mw-notification,
.client-dark-mode .infobox,
.client-dark-mode .toc,
.client-dark-mode .thumbinner,
.client-dark-mode #mw-head,
.client-dark-mode #mw-panel,
.client-dark-mode #content.mw-body,
.client-dark-mode #simpleSearch,
.client-dark-mode #simpleSearch #searchInput,
.client-dark-mode #siteNotice #centralNotice .cnotice {
border-color: #cdcbc8;
}
/* Links */
/* Links: normal */
.client-dark-mode a,
.client-dark-mode .vector-menu-tabs li a,
/* Backwards compatible VectorTabs, deprecated in MW v1.35. */
.client-dark-mode .vectorTabs li a,
.client-dark-mode .toctogglelabel,
.client-dark-mode .mw-parser-output a.external,
.client-dark-mode .mw-parser-output a.extiw,
.client-dark-mode .mw-parser-output a.extiw:active,
.client-dark-mode #mw-panel .portal .body li a {
/* color: #69f; Proposal below for level AA conformance, see also https://phabricator.wikimedia.org/T233266
`#36c` is transformed by :root `filter` to be closer to chosen `#69f`. */
color: #36c;
}
/* Links: visited */
.client-dark-mode a:visited,
.client-dark-mode .mw-parser-output a.extiw:visited,
.client-dark-mode #mw-panel .portal .body li a:visited {
/* color: #709bbd; Proposal below uses to-be-standardized color from https://phabricator.wikimedia.org/T213778 */
color: #6b4ba1;
}
/* Links: red */
.client-dark-mode a.new,
.client-dark-mode .vector-menu-tabs li.new a,
.client-dark-mode .vectorTabs li.new a {
color: #ff6e6e;
}
/* ::: Special Element Treatments ::: */
/* Image thumbnails */
.client-dark-mode .thumbimage {
border: 0;
}
/* Content image (thumbnail) SVGs */
/* `*not( .mbox-image )` exception doesn't work for unclear reasons */
.client-dark-mode .image img[ src*='svg' ],
.client-dark-mode img[ src*='Wiktionary-logo'] {
background-color: #fff;
border-radius: 1px;
}
/* Dealing with false positives from selector above */
.client-dark-mode .mw-echo-ui-notificationItemWidget-icon img[ src*='svg' ],
.client-dark-mode .mbox-image .image img[ src*='svg' ],
/* Vote symbols on Talk pages */
.client-dark-mode .image img[ alt^="Symbol" ] {
background-color: transparent;
}
/* Page previews */
.client-dark-mode .mwe-popups {
box-shadow: 0 30px 90px -20px rgba( 0, 0, 0, 0.3 ), 0 0 1px #000;
}
.client-dark-mode .mwe-popups .mwe-popups-extract[ dir='ltr' ]:after {
background-image: -webkit-linear-gradient( 90deg, rgba( 221, 221, 221, 0 ), #ddd 50% );
background-image: -moz-linear-gradient( 90deg, rgba( 221, 221, 221, 0 ), #ddd 50% );
background-image: linear-gradient( 90deg, rgba( 221, 221, 221, 0 ), #ddd 50% );
}
.client-dark-mode .mwe-popups.flipped-y:after,
.client-dark-mode .mwe-popups.flipped-x-y:after {
border-top: 11px solid #ddd;
}
.client-dark-mode .mwe-popups.mwe-popups-no-image-pointer:after {
border-bottom: 11px solid #ddd;
}
/* Contributions menu */
.client-dark-mode .cx-callout-1:after {
border-bottom-color: #ddd;
}
/* ::: Skin specific rules ::: */
/* Wikipedia globe fix */
.skin-vector #p-logo.mw-no-invert,
.skin-timeless #p-logo.mw-no-invert {
position: absolute;
top: 0;
height: 112px;
overflow: hidden;
}
/* Timeless globe fix */
.skin-timeless #mw-site-navigation {
position: relative;
}
.skin-timeless #p-logo.mw-no-invert {
left: 1em;
height: 124px;
}
/* Mobile Wikipedia logo mobile header */
.client-dark-mode .branding-box img {
filter: brightness( 0 );
}
}