利用css变量实现网页运行时scss变量值的切换

项目是采用scss进行的样式设定,通过设定css变量名的方式可以实现网站运行时的颜色整体切换。

1. 利用css变量实现scss的变量值修改。

示例:

1.1 css变量设定

:root {
    --my-color: #999999;
}

1.2. scss变量中使用css变量的值$myColor的值

.demo{
  $myColor: var(--my-color, #888888)
}

var() 函数用于插入自定义的属性值

  • 两个参数:property,value

    • property:必填,自定义属性的名称,必需以 -- 开头
    • value:可选,备用值,在属性不存在的时候使用
  • var(--my-color, #888888)会先查找css变量--my-color,若存在则使用该变量的值,若不存在则$myColor的值会是#888888

1.3. 通过修改css变量值来动态修改scss变量的值

js中获取与设置css变量的方法

//获取
getComputedStyle(document.documentElement).getPropertyValue('--my-color')
//设置
document.documentElement.style.setProperty('--my-color', 'pink')
posted @ 2021-06-28 18:26  朝日asahi  阅读(894)  评论(0编辑  收藏  举报