首页 > 其他 > 详细

前端判断系统主题

时间:2020-05-28 12:29:18      阅读:84      评论:0      收藏:0      [点我收藏+]

让网页适应系统主题及夜间模式。

1.使用CSS判断
使用媒介查询prefers-color-scheme,支持dark,light,no-preference三种模式。

/*深色*/
@media (prefers-color-scheme: dark) {
    body {
        background: rgb(53, 54, 58);
        color: rgba(238,238,238,1);
    }
}

/*浅色*/
@media (prefers-color-scheme: light) {
    body {
        background: rgb(255,255,255);
        color: rgba(51,51,51,1);
    }
}

2.js判断

/*判断是否支持主题色*/

if (window.matchMedia(‘(prefers-color-scheme)‘).media === ‘not all‘) {
    console.log(‘Browser doesn\‘t support dark mode‘);
}

/*判断是否处于深色模式*/
if(window.matchMedia(‘(prefers-color-scheme: dark)‘).matches){
    //Do some thing
}

/*判断是否处于浅色模式*/
if(window.matchMedia(‘(prefers-color-scheme: light)‘).matches){
    //Do some thing
}


/*模式切换听器*/
var listeners={
    dark: function(mediaQueryList ){
        if(mediaQueryList.matches){
            alert(‘您切换到深色模式了!‘)
        }
    },
    light: function(mediaQueryList){
        if(mediaQueryList.matches){
            alert(‘您切换到浅色模式了!‘)
        }
    }
}

window.matchMedia(‘(prefers-color-scheme: dark)‘).addListener(listeners.dark)
window.matchMedia(‘(prefers-color-scheme: light)‘).addListener(listeners.light)

 3.效果展示(以谷歌首页为例)


技术分享图片

 

 技术分享图片

 

前端判断系统主题

原文:https://www.cnblogs.com/ysxq/p/12979525.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!