**CSS定义变量

简介

  • 自定义属性,它包含的值可以在整个文档中重复使用。由自定义属性标记设定值,由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(),有两个参数,第一个参数是设置的值(变量),第二个参数的默认的值,定义的变量是区分大小写的

你可能感兴趣的:(css,javascript,css3)