Css的三大特性(继承性,层叠性,优先级)
1.什么是继承性
作用:给父元素设置一些属性,子元素也可以使用,这个我们称之为继承性
注意点:
1.并不是所有的属性都可以继承
只有以color/font-/text-/line开头的属性才可以继承
2.在CSS的继承中,不仅仅是儿子可以继承,只要是后代都可以继承
3.CSS继承性中的特殊性
3.1 a标签的文字颜色和下划线是不能继承的
3.2 h标签中的文字大小是不能继承的
应用场景:
一般用于设置网页上的一些共性信息,例如网页的文字颜色,字体,文字大小等内容
例如:body{}
1.什么是层叠性
作用:层叠性就是CSS处理冲突的一种能力
注意点:
层叠性只有在多个选择器选中“同一个标签”
然后又设置了“相同的属性”,才会发生层叠性
CSS全称 Cascading(层叠式) StyleSheet(样式表)
1.什么是优先级
作用:当多个选择器选中同一个标签,并且给同一个标签设置相同的属性时,如何层叠就由优先级来确定
2.优先级判断的三种方式
2.1是否时直接选中(间接选中就是指继承)
如果是间接选中,那么就是谁离目标标签近,就听谁的
2.2相同的选择器(直接选中)
如果都是直接选中,并且都是同类型的选择器,那么谁写在后面就听谁的
2.3不同选择器(直接选中)
如果都是直接选中,并且不是同类型的选择器,那么就会按照选择器的优先级来层叠
优先级顺序:
id>类>标签>通配符>继承>浏览器默认
3.优先级之important
1.什么是important
作用:用提升某个直接选中的标签的1选择器中的某个属性的优先级的,可以将被指定的属性的优先级提升为最高
注意点:
1.important只能用于直接选中,不能用于间接选中
2.通配符选择器选中的标签也是直接选中的
3.!important只能提升被指定的属性的优先级,其他的属性的优先级不会被提升
4.!important必须写在属性值的;号前面
5.!important前面的!不能省略
4.优先级之权重
1.什么是优先级的权重?
作用:当多个选择器混合在一起使用时,我们可以通过计算权重来判断谁的优先级最高
2.权重的计算规则
2.1首先先计算选择器中有多少个id,id多的选择器优先级最高
2.2如果id的个数一样,就看类名的个数,类名个数多的优先级最高
2.3如果类名的个数一样,再看标签名称的个数,标签名称个数多的优先级最高
2.4如果id个数/类名个数/标签名称个数都一样,那么就不会继续往下计算了,那么此时谁写在后面听谁的
也就是说优先级一样,那么谁写在后面听谁的
注意点:
1.只有选择器是直接选中标签的才需要计算权重