📅  最后修改于: 2023-12-03 14:55:51.880000             🧑  作者: Mango
在现代操作系统和浏览器中,暗模式(Dark Mode)已成为一个愈来愈流行的功能。它可以让用户在夜间或低光环境下更轻松地使用设备,也可以减少屏幕对眼睛的刺激。在这篇文章中,我们将介绍如何使用 Javascript 检测暗模式并作出相应的调整。
在大多数现代浏览器中,可以使用 matchMedia()
函数检测当前是否启用了暗模式。如果是的话,则返回 true
,否则返回 false
。
const isDarkModeEnabled = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;
if (isDarkModeEnabled) {
// 暗模式已启用
} else {
// 暗模式未启用
}
我们首先检查浏览器是否支持 matchMedia()
函数。然后,我们使用媒体查询 '(prefers-color-scheme: dark)'
来检测当前是否启用了暗模式,并将其保存在变量 isDarkModeEnabled
中。最后,我们根据该变量的值来作出相应的调整。
在检测到暗模式启用后,我们可以使用 CSS 样式来改变网页的颜色主题。我们可以设置不同的颜色方案、改变背景颜色或者调整文本颜色。
@media (prefers-color-scheme: dark) {
/* 在暗模式下使用的样式 */
body {
background-color: #222;
color: #ddd;
}
}
@media (prefers-color-scheme: light) {
/* 在亮模式下使用的样式 */
body {
background-color: #fff;
color: #333;
}
}
在上面的 CSS 代码中,我们使用 @media
媒体查询来创建两个不同的样式方案。当检测到暗模式启用时,将使用暗色主题样式。如果未启用,则使用亮色主题样式。
在这篇文章中,我们学习了如何使用 Javascript 检测暗模式并作出相应调整。通过 matchMedia()
函数可以轻松地检测当前是否启用了暗模式,然后使用 CSS 样式来改变网页的颜色主题。这将为用户提供更好的体验,并且可以让网站看起来更加时尚。