1、层叠性:就近原则一为同类种选择器,第二个选择器相同样式会覆盖第一个选择器。二为在同一个选择器中,相同的属性,以最后一个为准。
2、继承性:所谓继承性是指书写CSS样式表时,子标签会继承父标签的某些样式。
3、优先级:一为在同一个元素中!important大于style大于ID选择器大于类名选择器大于标签选择器大于通配符选择器。二为本身选择器的样式大于继承过来的样式。
可以有三种理解方式,如下:一:层叠性指的是样式的优先级,当产生冲突时以优先级高的为准。
开发者样式>读者样式>浏览器样式(除非使用!important标记 )
id选择符>(伪)类选择符>元素选择符
权重相同时取后面定义的样式
二:
CSS层叠性是指CSS样式在针对同一元素配置同一属性时,依据层叠规则(权重)来处理冲突,选择应用权重高的CSS选择器所指定的属性,一般也被描述为权重高的覆盖权重低的,因此也称作层叠。每个CSS选择器都会有一个权重,当两个选择器同时配置同一元素的同一属性时(比如一个设置color:red,另一个color:black),就会产生冲突,而解决冲突的方案就是CSS选择器的权重,权重高的来覆盖权重低的。
三:层叠性指的是上级标签的样式会自动继承到其所有下级标签,如针对<body>设置的标签选择器所设的字体样式会自动应用到<body>下的<p>中,除非<p>重写了相关样式将其覆盖。
所谓层叠性是指多种CSS样式的叠加:
结果是:.two样式生效
所谓继承性是指书写CSS样式表时,子标签会继承父标签的某些样式,如文本颜色和字号。想要设置一个可继承的属性,只需将它应用于父元素即可。
与文字有关的属性都可以,实现继承:
特殊点:
结果:a标签会继承div的样式
定义CSS样式时,经常出现两个或更多规则应用在同一元素上,这时就会出现优先级的问题。
关于CSS权重,我们需要一套计算公式来计算,这个就是CSS Specificity,我们称为CSS特性或称非凡性,它是一个衡量CSS值优先级的一个标准。具体规范如下:
注意:
总结: