CSS有三个非常重要的特性:层叠性、继承性、优先级。
一、层叠性
相同选择器给设置相同的样式,此时一个样式就会覆盖(层叠)另一个冲突的样式。层叠性主要解决样式冲突的问题。
层叠性原则:
1、样式冲突,遵循就近原则,哪个样式离结构近就使用哪个样式。
2、样式不冲突的不会重叠
二、继承性
子标签会继承父标签的某些样式,如文本、颜色和字号。简单理解就是子承父业。
1、简化代码,降低CSS样式的复杂性
2、子元素可以继承父元素的样式(text-、font-、line-这些元素开头的属性都可以继承,以及color属性)
行高的继承
body{
font: 20px/1.5 "Microsoft YaHei";
}
行高不加单位,就代表着是当前元素文字大小 font-size的1.5倍。这样写的好处就是可以根据自己的文字大小自行调整行高。
三、优先级
当同一个元素指定多个选择器,就会有优先级的产生。
1、如果选择器相同,则执行层叠性
2、如果选择器不同,则根据选择器权重执行
![](https://img.haomeiwen.com/i9087481/d220e10798a56acb.png)
div{
color: red !important;
}
四、权重叠加
如果是使用复合选择器,则会有权重叠加,需要计算权重。
![](https://img.haomeiwen.com/i9087481/f830f6c8e7685a9a.png)
网友评论