继承性
子元素会继承父元素的某些CSS属性
通常,跟文字内容相关的属性都能被继承
特殊性:
①. a标签的颜色不能继承,必须对a标签本身进行设置
②. h标签的字体大小不能修改,必须对h标签本身进行修改
层叠
声明冲突:同一个样式,多次应用到同一个元素
层叠:解决声明冲突的过程,浏览器自动处理(权重计算)
1. 比较重要性
重要性从高到底:
作者样式表:开发者书写的样式
1) 作者样式表中的!important样式
2) 作者样式表中的普通样式
3) 浏览器默认样式表中的样式
2. 比较特殊性
看选择器
总体规则:选择器选中的范围越窄,越特殊
具体规则:通过选择器,计算出一个4位数(x x x x)
- 千位:如果是内联样式,记1,否则记0
- 百位:等于选择器中所有id选择器的数量
- 十位:等于选择器中所有类选择器、属性选择器、伪类选择器的数量
- 个位:等于选择器中所有元素选择器、伪元素选择器的数量
3. 比较源次序
代码书写靠后的胜出
应用
- 重置样式表
书写一些作者样式,覆盖浏览器的默认样式
重置样式表 -> 浏览器的默认样式
常见的重置样式表:normalize.css、reset.css、meyer.css
- 爱恨法则
link > visited > hover > active
优先级
!important>行内样式>id选择器>类选择器>标签选择器>通配符>继承
权重:
作用:多个选择器组合以后的优先级
算法:(0,0,0,0)==》第一个0是important的个数,第二个0是id选择器的个数,
第三个0对应的类选择器的个数,第四个0对应的是标签选择器的个数,就是当前选择器的权重。
权重是优先级的算法,层叠是优先级的表现
选择器的工作原理:选择器是从右我往左查找