1.继承
定义:一些样式给父元素设置后,其后代元素也会继承父类的样式,这就叫做继承性。
后代元素只能继承来自祖先的文本样式。比如:color、text-开头的,font-开头的,line-开头的。
关于盒子的属性(宽,高,padding,margin),定位,布局的属性,都不能被继承。
【注意】a标签的颜色与下划线不能通过继承改变,要直接作用在a标签本身。
2.层叠
如果一个标签被多个选择器又为它设置了冲突的样式,那么我们需要计算这些选择器的权重,决定最终的显示样式。
计算权重
同一个样式写在不同的样式表中,权重大小为:
行内式>内嵌式+外联式(顺序,后面的样式会覆盖前面的样式。就近原则)
同一个样式表不同的选择器,权重大小:
比较选择器的数量,先比较ID选择器数量,ID选择器数量相同的话,在比较类选择器的数量,类选择器数量相同的话,在比较标签选择器。
对于相同的样式表,选择器的优先级为:ID选择器>类选择器>标签选择器
权重相同时。比较书写的顺序,后面的会覆盖前面的样式。
【注意】并集选择器的权重计算是分开的。
选择器未选中元素时,通过继承过来的样式的权重时最低的。
总结:
一.如果样式在与不同的样式表,行内样式表的权重最高,在比较内嵌式与外联式的书写顺序。
二.同一样式表中,数基础选择器的数量
1.ID选择器数量多的权重高
2.ID选择器数量相同,再看类选择器的数量,谁多谁的权重高
3.类选择器的数量也相同,比较标签选择器
4.如果标签选择器的数量相同,则比较书写顺序
5.通配符的权重对标签选择器的权重要低,比继承过来的要高
important
important在英文中是“重要”的意思
属性:属性值 !important;
加上这句话后,该样式的权重就会变为最高
错误写法:
color:tomato;!important
color:tomato; important
【注意点】
1.importtant提升的是一个属性的权重,而不是选择器的权重。
2.important无法提升继承的权重。
3.实际开发中,important慎用,一般不允许使用,因为他很容易使用不当,造成使用量增加,从而导致网页这个css的样式崩溃。