Skip to content

Commit 95bdebe

Browse files
committed
gh-13 fix FOUC in dark mode
1 parent d11c327 commit 95bdebe

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

_includes/layouts/base.njk

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@
2929
<title>{{ title or metadata.title }}</title>
3030
</head>
3131
<body id="top">
32+
{% getBundle "js", "top" %}
33+
3234
{% include "templates/header.njk" %}
3335

3436
<main id="content">
@@ -42,6 +44,18 @@
4244

4345
<!-- Current page: {{ page.url | htmlBaseUrl }} -->
4446

47+
{% js "top" %}
48+
<script>
49+
// Fix FOUC in dark mode
50+
setDarkBeforeRender = () => {
51+
const localScheme = localStorage.getItem('scheme')
52+
if (localScheme === 'dark' || (localScheme === 'system' && window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches)) {
53+
document.documentElement.setAttribute('data-fr-theme', 'dark');
54+
}
55+
}
56+
setDarkBeforeRender();
57+
</script>
58+
{% endjs %}
4559
{% js "body" %}
4660
<script>
4761
const SEARCH_RESULTS_URL = "{{ "/search-results/" | locale_url(page.lang) | htmlBaseUrl }}";

0 commit comments

Comments
 (0)