feat: add auto theme mode
This commit is contained in:
parent
ab2d732ec5
commit
50640d0590
6 changed files with 39 additions and 15 deletions
|
@ -49,12 +49,15 @@
|
|||
<body>
|
||||
<script>
|
||||
(() => {
|
||||
const currentTheme = sessionStorage.getItem('theme');
|
||||
const currentTheme = sessionStorage.getItem("theme") || "auto";
|
||||
const metaColorScheme = document.querySelector('meta[name="color-scheme"]');
|
||||
const prefersDarkScheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
const themeToSet = currentTheme || (prefersDarkScheme ? 'dark' : 'light');
|
||||
if (!currentTheme) sessionStorage.setItem('theme', themeToSet);
|
||||
metaColorScheme.setAttribute('content', themeToSet);
|
||||
if (currentTheme === "auto") {
|
||||
metaColorScheme.setAttribute("content", "light dark");
|
||||
document.documentElement.style.colorScheme = "";
|
||||
} else {
|
||||
metaColorScheme.setAttribute("content", currentTheme);
|
||||
document.documentElement.style.colorScheme = currentTheme;
|
||||
}
|
||||
})();
|
||||
</script>
|
||||
<div class="main-wrapper">
|
||||
|
|
Reference in a new issue