css使用js中的变量var()
var()
导读
- 这篇文章所指的
css
变量, 并不是指less
等预编译语言的变量(@)
- 而是直接在
.css
页面中使用.js|.html
中所定义的变量 (var()-mdn) - 一般情况下 前端样式只要通过 js动态切换不同类名 行内样式
- 就可以在
React Vue
中完成绝大多数的需求了 - 但是有些使用场景就需要原生
css
的var()
变量。 或者说使用他可以达到更加方便的效果1
2
3
4
5
6
7
8
9// 假设使用了一个组件库的一个小圆点, 而他内部是通过伪元素做的
// 此时的需求是 小圆点的颜色由用户决定,不是一个固定的值,你该如何控制呢?
// 我们通常的做法是
// 1.定义不同的类名切换: x => 颜色不是一个固定的值
// 2.行内样式直接传递: x => 行内样式不能修改伪元素
// 3.自己重写: x => 麻烦,这里只是一个用例,某些场景会极其繁琐
// 4.css in js x => 公司项目一般不用这个
// 5.dom操作 x => 不推荐
这时候var()就应运而生了
原生html
1 | # index.html |
jsx
1 | import styles from './app.module.css' |
tsx
1 | import styles from './app.module.css' |
vue2
1 | <template> |
vue3
1 | # vue3提供了API 直接v-bind就可以使用了 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 LiuYuanhua!
评论