继承
- 就像生活中后代会继承祖先财产一样
在网页中后代元素也会继承到祖先元素上的样式
- 为祖先元素所设置样式,也会同时应用到其后代元素上
- 继承的存在大大的简化了样式的编写
可以只为祖先元素设置样式,即可让所有后代元素都同时具有该样式
在开发中可以将一些公共的样式,统一设置到祖先元素上,这样即可让所有的元素都具有该样式
- 并不是所有的样式都会被继承,比如背景相关的样式都不会继承,还有布局相关...
权重
当我们使用不同的选择器选择了相同的元素,
而又为其同一个样式设置了不同的值,此时就发生了样式的冲突
发生样式冲突时,显示那个样式,由选择器的权重决定,权重高的优先显示,这其中内联样式的优先级是最高的,一旦设置则无法在样式表中修改
如果为一个样式添加了 !important 则该样式会获得最高的优先级,将会优先于所有的样式显示。(慎用)
内联样式 1000(1,0,0,0)
id选择器 100 (0,1,0,0)
类和伪类 10 (0,0,1,0)
元素 1 (0,0,0,1)
通配选择器 0 (0,0,0,0)
继承来的样式,没有优先级
对于复合选择器来说,需要将所有的选择器的优先级相加然后在比较,
优先级计算时不会超过其最大的数量级,分组选择器中的优先级是独立计算的。如果两个选择器的优先级相同,则使用靠下的样式。