Skip to content

Commit c460d04

Browse files
committed
Add dark mode
1 parent 3cba22a commit c460d04

File tree

1 file changed

+45
-10
lines changed

1 file changed

+45
-10
lines changed

src/styles/app.scss

Lines changed: 45 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,46 @@ $header-font: 'Alfa Slab One', serif;
88
--gray: #2a3439;
99
--red: #a72145;
1010
--yellow: #ffc832;
11+
--code-color: black;
1112
--code-bg-color: rgba(42, 52, 57, 0.05);
1213
--code-border-color: rgba(42, 52, 57, 0.25);
14+
--blockquote-color: black;
1315
--blockquote-bg-color: rgb(247, 249, 249);
1416
--blockquote-left-border-color: rgb(195, 205, 210);
17+
--body-background-color: white;
18+
--body-foreground-color: white;
19+
--body-color: rgb(34,34,34);
20+
--div-brand-a-color: black;
21+
--white-color: black;
22+
--white-a: #2a3439;
23+
--nav-links-a: #2a3439;
24+
--publish-date-author: #2a3439;
25+
--section-header-h2-color: black;
26+
}
27+
28+
// Dark theme
29+
@media (prefers-color-scheme: dark) {
30+
:root {
31+
--code-color: white;
32+
--code-bg-color: rgba(213, 203, 198, 0.05);
33+
--code-border-color: rgba(213, 203, 198, 0.25);
34+
--blockquote-color: rgb(195, 205, 210);
35+
--blockquote-bg-color: rgba(213, 203, 198, 0.05);
36+
--blockquote-left-border-color: rgb(195, 205, 210);
37+
--body-background-color: #181a1b;
38+
--body-foreground-color: #e8e6e3;
39+
--body-color: white;
40+
--div-brand-a-color: white;
41+
--white-color: white;
42+
--white-a: #d5cbc6;
43+
--nav-links-a: #d5cbc6;
44+
--publish-date-author: #d5cbc6;
45+
--section-header-h2-color: white;
46+
}
1547
}
1648

1749
html {
18-
font-size: 62.5%
50+
font-size: 62.5%;
1951
}
2052

2153
@media screen and (min-width: 30em) {
@@ -26,14 +58,15 @@ html {
2658

2759
body {
2860
font-family: $body-font;
29-
background-color: white;
61+
background-color: var(--body-background-color);
62+
color: var(--body-color);
3063

3164
/* Ensure the footer is always at the bottom of the screen */
3265
min-height: 100vh;
3366
display: flex;
3467
flex-direction: column;
3568
& > #main-content {
36-
flex: 1;
69+
flex: 1;
3770
}
3871
}
3972

@@ -85,6 +118,7 @@ section {
85118
margin: 0;
86119
padding: 0;
87120
letter-spacing: 1px;
121+
color: var(--section-header-h2-color);
88122
}
89123
}
90124
}
@@ -116,6 +150,7 @@ ul.nav, ul.nav li {
116150

117151
.nav a {
118152
color: var(--gray);
153+
color: var(--nav-links-a);
119154
}
120155

121156
div.brand {
@@ -128,7 +163,7 @@ div.brand {
128163
margin-top: $v-top;
129164

130165
& a {
131-
color: black;
166+
color: var(--div-brand-a-color);
132167
text-decoration: none;
133168
}
134169

@@ -144,12 +179,12 @@ div.brand {
144179
}
145180

146181
.white {
147-
color: black;
182+
color: var(--white-color);
148183
.highlight {
149184
background-color: var(--yellow);
150185
}
151186
a {
152-
color: var(--gray);
187+
color: var(--white-a);
153188
text-decoration: underline;
154189
}
155190
.button.button-secondary {
@@ -165,7 +200,7 @@ div.brand {
165200
}
166201
}
167202
code {
168-
color: black;
203+
color: var(--code-color);
169204
background-color: var(--code-bg-color);
170205
border: 1px solid var(--code-border-color);
171206
}
@@ -200,12 +235,12 @@ ul {
200235

201236
.posts {
202237
background-color: var(--gray);
203-
color: white;
238+
color: var(--body-foreground-color);
204239
.highlight {
205240
background-color: var(--red);
206241
}
207242
a {
208-
color: white;
243+
color: var(--body-foreground-color);
209244
text-decoration: underline;
210245
}
211246
.button.button-secondary {
@@ -235,7 +270,7 @@ table.post-list a:hover {
235270
}
236271

237272
.publish-date-author {
238-
color: var(--gray);
273+
color: var(--publish-date-author);
239274
margin: -60px 0 60px 0;
240275
}
241276

0 commit comments

Comments
 (0)