CSS学习3——层叠和特殊性
作者:互联网
CSS学习3——层叠和特殊性
层叠
同一元素存在两个或更多规则时,CSS通过一个成为层叠(cascade)的过程处理这种冲突。层叠采用以下重要度次序:
- 标有!important的用户样式。
- 标有!important的作者样式。
- 作者样式。
- 用户样式。
- 浏览器/用户代理应用的样式。
然后,根据选择器的特殊性决定规则的次序。具有更特殊选择器的规则优先于具有一般选择器的规则。如果两个规则的特殊性相同,那么后定义的规则优先。
特殊性
为了计算规则的特殊性,给每种选择器都分配一个数字值。然后,将规则的每个选择器的值加在一起,计算出规则的特殊性。
选择器的特殊性分为4个成分等级:a、b、c、d,分别对应值1000,、100、10、1
- 如果样式是行内样式,那么a=1。
- b等于ID选择器的总数。
- c等于类、伪类和属性选择器的数量。
- d等于类型选择器和伪元素选择器的数量。
特殊性使用总结如下:
- 用style属性编写的规则总是比其他任何规则特殊。
- 具有ID选择器的规则比没有ID选择器的规则特殊。
- 具有类选择器的规则比只有类型选择器的规则特殊。
- 如果两个规则的特殊性相同,那么后定义的规则优先。
继承
继承即应用样式的元素的后代会继承样式的某些属性(如颜色和字号)。例如,如果将主体元素的文本颜色设置为黑色,那么主体元素的所有后代也显示黑色的文本。对于字号也是这样的。
需要注意的是,继承而来额样式的特殊性为空,有可能会被浏览器的默认样式表所覆盖(如标题字号)。
标签:层叠,特殊性,样式,规则,选择器,CSS 来源: https://www.cnblogs.com/zh7676/p/12482668.html