浅色模式效果如图:
深色模式效果如图:
window.matchMedia ( https://developer.mozilla.org/zh-CN/docs/Web/API/Window/matchMedia ) 方法可以用来查询指定的媒体查询字符串解析后的结果。结合 CSS 变量和 matchMedia 的查询结果,设置对应的 CSS 主题颜色。该方法更灵活,可以单独抽离主题色进行适配,深色模式匹配 (prefers-color-scheme: dark) ,浅色模式匹配 (prefers-color-scheme: light) 。
监听主题模式,深色模式时为 body 添加类名 dark,根据 CSS 变量的响应式布局特点,自动生效 dark 类名下的 CSS。
浅色模式效果如图:
深色模式效果如图:
许多人喜欢为网站选择深色模式,也许他们更喜欢这种UI,或者他们想让眼睛免受疲劳。这篇文章将向你展示如何实现自动css深色模式,该模式根据访问者的主题而变化。
在此站点上,我定义了变量以设置主题的颜色,我配置的标准变量如下:
变量使用方法:
这样,如果你想更改主题颜色,则只需修改定义的变量,所有使用该变量的内容都会更新。
现在我们需要定义一组新的变量,这些变量将在调用css深色模式时使用。对我来说,其他变量定义如下所示:
现在,我们定义了两组变量,剩下要做的就是将 prefers-color-scheme 媒体查询添加到我们的深色变量中。
带上深色变量并在 @media 下面添加查询:
如果有人使用深色操作系统主题并访问你的网站,你的网站将自动切换到深色模式
切换前
切换后
如果你想要测试效果,可以修改自己操作系统的主题模式
现在,如果你有一个网站,不仅应该支持响应式,而且在主题方面也具有响应能力。我敢肯定,你的深夜访客或那些只喜欢深色主题网站的访客一定会感谢你。
原文地址(英文): https://kevq.uk/how-to-add-css-dark-mode-to-a-website/
在uniappnvue中,可以通过修改css来实现深色模式样式的切换。步骤如下:1、安装uniappnvue,打开css文件,更改其中的代码。
2、将background-color和主题颜色替换成你想要的深色模式。
3、上传修改后的css文件,就可以开始使用深色模式样式了。