CSS-三大特性

CSS三大特性

  • 层叠性
  • 继承性
  • 优先级
    • 权重计算方法(特异性)

css层叠性

层叠性是指多种css样式的叠加。
是浏览器冲突的一个能力,如果一个属性通过两个相同选择器设置到同一个元素上,那么这个会将另一个属性层叠掉

一般情况下,如果出现样式冲突,则会按照css书写顺序,以最后的样式为准

  1. 样式冲突,遵循的原则是就近原则。那个样式离着结构近,就执行那个样式。
  2. 样式不冲突,不会层叠

css继承性

所谓继承性是指书写CSS样式表时,子标签会继承父标签的某些样式,如文本颜色和字号。想要设置一个可继承的属性,只需将它应用于父元素即可。
简单的理解就是:子承父业。

注意:
恰当地使用继承可以简化代码,降低CSS样式的复杂性。子元素可以继承父元素的样式(text-, font-,,1ine-这些元素开头的都可以继承,以及co1or属性)

css优先级

定义CSS样式时,经常出现两个或更多规则应用在同一元素上,这时就会出现优先级的问题。
在考虑权重时,初学者还需要注意一些特殊的情况, 具体如下:

继承样式的权重为0。即在嵌套结构中,不管父元素样式的权重多大,被子元素继承时,他的权重都为0,也就是说子元素定义的样式会覆盖维承来的样式。
行内样式优先。应用sty1e属性的元素,其行内样式的权重非常高,可以理解为远大于100。总之,他拥有比上面提高的选择器都大的优先级。
权重相同时,CSS遵循就近原则。也就是说靠近元素的样式具有最大的优先级,或者说排在最后的样式优先级最大。
CSS定义了一个!important命令,该命令被赋予最大的优先级。也就是说不管权重如何以及样式位置的远近,!important 都具有最大优先级。

权重计算方法(特异性):

几个规则:

  • 权重使用四个数字来衡量(x,x,x,x)【CSS2使用三位】
  • 继承的权重为(0,0,0,0)
  • 标签选择器的权重为(0,0,0,1)
  • 类、伪类选择器的权重为(0,0,1,0)
  • id选择器选择器的权重为(0,1,0,0)
  • 行内样式的权重为(1,0,0,0)
  • !important的权重无限大

计算方法:

  • 多个选择器混杂时,权重之和也是用四个数字来组成,每一位的值为多个选择器四个数字的每位之和,比如div:first-child的权重为(0,0,0,1)+(0,0,1,0)=(0,0,1,1),比如div ul li 为(0,0,0,3),比如a:hover为(0,0,1,1)
  • 权重之和的数制是不会进位的,再多的标签选择器权重加和也抵不过一个类选择器。
  • 多个选择器之间的顺序是无关的,不影响权重之和。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值