实现js动态设置css样式,js动态设置全局样式主题色
程序员文章站
2022-03-02 17:31:31
...
需求:
1.设置一个全局的样式
2. 样式是需要动态改变的,改变的内容是通过请求后台接口获取的,因此需要js能够对css进行改变
实现:
或许你可能不相信,代码只需要几行
js代码:
// 设置主题色
document.getElementsByTagName('body')[0].style.setProperty('--themeColor', '#2CB4FF');
--themeColor是自定义的样式代号
css代码:
.title{
color: var(--themeColor);
}
只要保证在这个css样式作用之前,这个js代码已经运行了,就可以实现的~,所以在外部写js代码的话,要提前调用代码执行哦
如果想要设置一个默认值(即在js代码没有运行的情况下也有一个颜色):
css代码:
.title{
color: var(--themeColor, #2CB4FF);
}
//注意注意颜色不用 ' ' 引号哦~
重点!!!!
这个方法不仅可以在原生代码进行使用,在vue,在uni-app也是可以使用的!!!!
参考资料,没懂点它 ==>
https://www.bilibili.com/video/BV1cy4y1D7Lz?from=search&seid=15480974553427705179
好啦,今日踩坑完毕,再见~ 加油!
上一篇: JS如何设置元素样式?
下一篇: 原生JS设置CSS样式