
实现dark适配
type
status
date
slug
summary
tags
category
icon
password
1 在页面添加dark支持
在页面中添加meta声明
后者在全局css添加声明
2 css 实现dark适配
这里进入我们的页面是白色,要适配黑色,可以使用媒体查询
这里有个问题,项目css太多,这样适配效率很慢。
如果可以只是样式的替换,可以使用插件自动化完成这步postcss-darkmode。
postcss-darkmode 配置方法
另外一个问题,什么的图片,往往白天和黑夜是不同的,需要替换。
可以使用<picture> + <source> 标签联合媒体查询实现不同主题显示不同图片
2 js 检测dark
核心是使用window.matchMedia方法去判断,此方法返回实例有addListener方法可以在页面改变时候触发事件,做出对应行为。
判断是否支持主题色:
判断是否处于深色模式:
参考: