![HTML5+CSS3+JavaScript 从入门到项目实践(超值版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/418/31794418/b_31794418.jpg)
3.4 CSS三大特性
CSS三大特性——层叠性、继承性和优先性。
3.4.1 CSS层叠性
![](https://epubservercos.yuewen.com/A0FA69/17214367505511306/epubprivate/OEBPS/Images/Figure-P52_13609.jpg?sign=1739383130-iTcC778d0EZ7I8Q90NHG0Io78TULpPOp-0-cb707d557cb14bbf1890086e88f49d2c)
层叠性就是处理CSS冲突的能力。当同一个元素被两个选择器选中时,CSS会根据选择器的权重决定使用哪一个选择器。权重低的选择器效果会被权重高的选择器效果覆盖掉,权重相同时取后者。
权重可以理解为一个选择器对于这个元素的重要性。id选择器权重为100,类选择器权重为10,标签选择器的权重为1,如图3-6所示。
![](https://epubservercos.yuewen.com/A0FA69/17214367505511306/epubprivate/OEBPS/Images/Figure-P52_13484.jpg?sign=1739383130-WWEyOBAluOePY5BEHi2A0oJnr0Vs6vXy-0-c6857bf303c96c9b40bf48a1dc4c79d6)
图3-6 权重
【例3-5】(实例文件:ch03\Chap3.5.html)CSS层叠性。
![](https://epubservercos.yuewen.com/A0FA69/17214367505511306/epubprivate/OEBPS/Images/Figure-P52_119728.jpg?sign=1739383130-tCChyVdreFMQNCasrnR3wMGDNScI7T9u-0-ca01758ebf8cbd2a19bf321f936268dd)
相关的代码实例请参考Chap3.5.html文件,在IE浏览器中运行的结果如图3-7所示。
![](https://epubservercos.yuewen.com/A0FA69/17214367505511306/epubprivate/OEBPS/Images/Figure-P53_13613.jpg?sign=1739383130-fHxZyE3bISWycYumdtrY7WdSDRWDMqOZ-0-76e0c1d6c74756284348337724d202ec)
图3-7 层叠性
3.4.2 CSS继承性
![](https://epubservercos.yuewen.com/A0FA69/17214367505511306/epubprivate/OEBPS/Images/Figure-P53_13759.jpg?sign=1739383130-1Sj42A70mhjewGSSFoG7eUVhfJ7iMaeW-0-6ac56b827163712bfab562c37e8e94d6)
继承性是子元素继承父元素样式的特性,在CSS中以text-、font-、line-开头的属性以及color属性都可以继承。
有一些比较特殊的元素,如<a>标签的颜色不能继承,必须对<a>标签本身进行设置,<h>标签的字体大小不能继承,必须对<h>标签本身进行设置。
【例3-6】(实例文件:ch03\Chap3.6.html)CSS继承性。
![](https://epubservercos.yuewen.com/A0FA69/17214367505511306/epubprivate/OEBPS/Images/Figure-P53_119729.jpg?sign=1739383130-7glbABxvKTCt3tNRFB0TY8ny5U4cx1T9-0-61ee9ae0255e2b342eed97285c591403)
相关的代码实例请参考Chap3.6.html文件,在IE浏览器中运行的结果如图3-8所示。
![](https://epubservercos.yuewen.com/A0FA69/17214367505511306/epubprivate/OEBPS/Images/Figure-P53_13751.jpg?sign=1739383130-WCDg4yhWRpP7uPHFjasTCCKbKLNbPnxd-0-0a559f97da86f8e4270d8faee100746e)
图3-8 继承性
可以看到,我们只给div设置了样式,3个子元素都继承了父元素的样式,除了<a>标签没有继承颜色,<h>标签没有继承字体大小。
3.4.3 CSS优先性
![](https://epubservercos.yuewen.com/A0FA69/17214367505511306/epubprivate/OEBPS/Images/Figure-P54_13927.jpg?sign=1739383130-Vt0S13xohhzaOzYq0le95NSns98kM5R4-0-1ab20ef5eb50c0de2babb38780389a87)
当不同的规则作用到同一个html元素上时,如果定义的属性有冲突,那么应该用谁的值?CSS有一套优先性的定义,顺序如下:
!important>行内样式>ID选择器>类选择器>标签选择器>通配符>继承>浏览器默认属性值。
【例3-7】(实例文件:ch03\Chap3.7.html)CSS优先性。
![](https://epubservercos.yuewen.com/A0FA69/17214367505511306/epubprivate/OEBPS/Images/Figure-P54_119730.jpg?sign=1739383130-UkOEMaabSVmfmQScUSx8e4lwZ7gGP0Cj-0-525faf806f2857a0d6c5ae074ee88303)
相关的代码实例请参考Chap3.7.html文件,在IE浏览器中运行的结果如图3-9所示。
![](https://epubservercos.yuewen.com/A0FA69/17214367505511306/epubprivate/OEBPS/Images/Figure-P54_13919.jpg?sign=1739383130-F2RK9UXlsYNxJEzVzWIdThE8Fa5vtSO5-0-63c30c2bd6148a948c09833f2cc5bef9)
图3-9 优先性