三大特性:层叠性、继承性、优先级
给相同的选择器设置相同的样式,此时一个样式会覆盖(层叠)其他冲突的样式。
层叠性原则:
练习:颜色冲突,字体大小不冲突
Document
css层叠样式按照就近原则
子标签会继承父标签的某些样式,比如文本颜色和字号,简单理解就是:子承父业。
好处:降低CSS样式的复杂性
可以继承的部分:子元素可以继承父元素的样式(text-,font-,line-这些元素开头的可以继承,还有color属性)
Document
css层叠样式按照就近原则css样式继承
p继承了div
行高可以跟单位,也可以不跟单位,表示行高是当前文字的多少倍。这样写的好处:
元素可以根据自身文字大小动态调整行高
body{font-size:12px/1.5;//1.5表示当前行高是当前字号大小的1.5倍。12*1.5
}
练习:继承了行高是字体的1.5倍
Document
css层叠样式按照就近原则css样式继承
场景:当同一个元素指定了多个选择器,就会有优先级的产生
选择器 | 权重 |
---|---|
通配符* | 0,0,0,0 |
元素选择器 | 0,0,0,1 |
类选择器,伪类选择器 | 0,0,1,0 |
id选择器 | 0,1,0,0 |
行内样式style=“” | 1,0,0,0 |
!important重要的 | 无穷大 |
继承<通配符<元素 |
div{color:pink!important;
}
练习1:元素选择器<类选择器
Document
样式优先级
练习2:类选择器
Document
样式优先级important
场景:如果是覆盖选择器,则会出现权重叠加问题,需要重新计算权重
权重叠加不会有进位问题
div ul li---0,0,0,3
.nav ul li---0,0,1,2
a:hover------0,0,1,1
.nav a-----0,0,1,1
练习:
把第一个li元素的内容设置为粉色,加粗
Document
- 权重叠加
- 权重叠加
- 权重叠加