Skip to content

Conversation

@FrexCheat
Copy link

问题描述

通过侧边栏按钮切换明暗主题时没有设置 color-schemedata-theme,导致切换后如果不刷新页面部分文字不会自动根据主题切换颜色,从而显示不清楚。

截图说明

从 light mode 切换到 dark mode

aead79f1-29d9-4713-848b-ebc549c6b481

从 dark mode 切换到 light mode

ccf7efed-7f72-465b-a0ce-f64722ccce04

相关 issues

#563

解决方案

lightDarkSwitch.js 中设置 color-schemedata-theme 属性

enableLightMode() {
  document.body.classList.remove("dark-mode");
  document.documentElement.classList.remove("dark");
  document.body.classList.add("light-mode");
  document.documentElement.classList.add("light");
+document.documentElement.style.colorScheme = "light";
+document.documentElement.setAttribute("data-theme", "light");
  this.iconDom.className = "fa-regular fa-moon";
  main.styleStatus.isDark = false;
  main.setStyleStatus();
  this.mermaidInit(this.mermaidLightTheme);
  this.setGiscusTheme();
},

enableDarkMode() {
  document.body.classList.remove("light-mode");
  document.documentElement.classList.remove("light");
  document.body.classList.add("dark-mode");
  document.documentElement.classList.add("dark");
+document.documentElement.style.colorScheme = "dark";
+document.documentElement.setAttribute("data-theme", "dark");
  this.iconDom.className = "fa-regular fa-brightness";
  main.styleStatus.isDark = true;
  main.setStyleStatus();
  this.mermaidInit(this.mermaidDarkTheme);
  this.setGiscusTheme();
},

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant