利用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

  • 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')

相关文章

Css3如何实现鼠标移上变长特效?(图文+视频)
css3怎么实现鼠标悬停图片时缓慢变大效果?(图文+视频)
jquery如何实现点击网页回到顶部效果?(图文+视频)
css3边框阴影效果怎么做?(图文+视频)
css怎么实现圆角边框和圆形效果?(图文+视频教程)
Css3如何实现旋转移动动画特效