CSS var() 函数

非常适合一个属性值在多处被使用,首先定义一个名为 --bg-color 的属性

:root {
  --bg-color: red;
}

然后使用 var() 函数调用该属性,。

#div1 {
  background-color: var(--bg-color);
}

#div1 {
  background-color: var(--bg-color);
}

实现浅色模式与深色模式

我们定义两套CSS样式,然后在<html>标签动态增加class='dark'来实现浅色模式与深色模式背景与字体的动态切换。

/*浅色模式*/
:root {
  --bg-color: #ffffff;
}

/*深色模式*/
html.dark {
  --bg-color: #22272e;
}

演示如下

模拟背景与字体切换,当点击 切换 按钮时,div1 切换为CSS .dk 对应的背景颜色与字体。

div1

此次演示代码如下:

<a href="javascript:void(0);" onclick="(function (){
    let element = document.getElementById('div0');
    if(element.className.indexOf('dk') !== -1){
        element.className='';
    }else{
        element.className='dk';
    }
})()">切换</a>

<br>

<div id="div0">
    <div id="div1">
        <span id="span1">div1</span>
    </div>
    <br>
</div>

<style>
    :root {
        --bg-color1: #39d48e;
        --font-color1: black;
    }

    .dk {
        --bg-color1: #30a26e;
        --font-color1: red;
    }

    #div1 {
        border-radius: 6px;
        height: 40px;
        line-height: 40px;
        padding-left: 10px;
        background-color: var(--bg-color1);
    }

    #span1 {
        color: var(--font-color1);
    }
</style>
更新日期:
作者: qwding