<>简介
* 自定义属性,它包含的值可以在整个文档中重复使用。由自定义属性标记设定值,由var() 函数来获取值,
* 自定义属性受级联的约束,并从其父级继承其值。
<>基本用法
声明一个自定义属性,属性名需要以两个减号(–)开始,属性值则可以是任何有效的CSS值。和其他属性一样,自定义属性也是写在规则集之内的,如下:
el { --main-color: red; }
注意,规则集所指定的选择器定义了自定义属性的可见作用域。通常的最佳实践是定义在根伪类
:root下(看项目的根节点是什么,具体情况具体分析),这样就可以在HTML文档的任何地方访问到它了:
:root { --main-color: red; }
<>自定义属性的继承性
自定义属性会继承。这意味着如果在一个给定的元素上,没有为这个自定义属性设置值,在其父元素上的值会被使用。看这一段HTML:
<div class="one"> <div class="two"> <div class="three"></div> <div class="four"
></div> </div> </div> .two { --test: 10px; } .three { --test: 2em; }
在这个情况下, var(–test) 的结果分别是:
* 对于元素 class=“two” :10px
* 对于元素 class=“three” :2em
* 对于元素 class=“four” :10px (继承自父属性)
* 对于元素 class=“one” :非法值,会变成自定义属性的默认值
* val(),有两个参数,第一个参数是设置的值(变量),第二个参数的默认的值,定义的变量是区分大小写的