暗模式(Dark Mode)和亮模式(Light Mode)是用户界面的一种显示模式,旨在提高用户体验和可读性。暗模式通常使用深色背景和浅色文字,而亮模式则相反。
实现暗模式和亮模式主要涉及HTML、CSS和JavaScript的使用。
在HTML中,可以通过添加一个切换按钮来允许用户在两种模式之间切换。
<button id="theme-toggle">Toggle Theme</button>
使用CSS媒体查询和CSS变量来实现主题切换。
:root {
--background-color: #ffffff;
--text-color: #000000;
}
@media (prefers-color-scheme: dark) {
:root {
--background-color: #121212;
--text-color: #ffffff;
}
}
body {
background-color: var(--background-color);
color: var(--text-color);
}
使用JavaScript来切换CSS变量,实现主题的动态切换。
document.getElementById('theme-toggle').addEventListener('click', function() {
const currentTheme = document.body.style.backgroundColor;
if (currentTheme === 'rgb(255, 255, 255)') {
document.documentElement.style.setProperty('--background-color', '#121212');
document.documentElement.style.setProperty('--text-color', '#ffffff');
} else {
document.documentElement.style.setProperty('--background-color', '#ffffff');
document.documentElement.style.setProperty('--text-color', '#000000');
}
});
@media (prefers-color-scheme: dark)
来检测系统级暗模式。通过以上方法,可以实现一个简单且高效的暗模式和亮模式切换功能。
领取专属 10元无门槛券
手把手带您无忧上云