浅色模式效果如图:
深色模式效果如图:
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。
浅色模式效果如图:
深色模式效果如图:
要CSS的呀?一般都用JS的。如果是CSS的,只能做到背景切换,做不到图片本身切换。
为了要支持IE6,所以一般都用a的伪类来做这种效果
a{background-image:url(普通状态时的背景图片)}
a:hover{background-image:url(鼠标放上去的背景图片)}
如果是做图片本身切换的话,只能用JS
<img src="原图片" onmouseover="this.src='新图片'" onmouseout="this.src='原图片'" />