Skip to content

Commit c6c09d8

Browse files
Default to light theme is JS is enabled but not working
1 parent c7491b9 commit c6c09d8

File tree

2 files changed

+9
-3
lines changed

2 files changed

+9
-3
lines changed

src/librustdoc/html/static/css/noscript.css

+2-2
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ nav.sub {
3434
in rustdoc.css */
3535

3636
/* Begin theme: light */
37-
:root {
37+
:root, :root:not([data-theme]) {
3838
--main-background-color: white;
3939
--main-color: black;
4040
--settings-input-color: #2196f3;
@@ -140,7 +140,7 @@ nav.sub {
140140

141141
@media (prefers-color-scheme: dark) {
142142
/* Begin theme: dark */
143-
:root {
143+
:root, :root:not([data-theme]) {
144144
--main-background-color: #353535;
145145
--main-color: #ddd;
146146
--settings-input-color: #2196f3;

src/librustdoc/html/static/css/rustdoc.css

+7-1
Original file line numberDiff line numberDiff line change
@@ -2316,7 +2316,13 @@ in src-script.js and main.js
23162316
alter their formatting. */
23172317

23182318
/* Begin theme: light */
2319-
:root[data-theme="light"] {
2319+
/*
2320+
About `:root:not([data-theme])`: if for any reason the JS is enabled but cannot be loaded,
2321+
`noscript` won't be enabled and the doc will have no color applied. To do around this, we
2322+
add a selector check that if `data-theme` is not defined, then we apply the light theme
2323+
by default.
2324+
*/
2325+
:root[data-theme="light"], :root:not([data-theme]) {
23202326
--main-background-color: white;
23212327
--main-color: black;
23222328
--settings-input-color: #2196f3;

0 commit comments

Comments
 (0)