CSS3的三大特性

CSS的三大特性

1. CSS具有层叠性
2. CSS具有继承性
3. CSS有优先级

一、CSS具有层叠性
  • 说明
  1. 层叠性是多种CSS样式的叠加,是浏览器处理样式冲突的方式。在HTML中对于同一个元素可以有多个CSS样式存在,当有相同权重的样式存在时,会根据这些样式出现的先后顺序来决定,处于最后面的CSS样式将会覆盖前面的CSS样式。
    - 举例
    下面代码,出现一个div 标签指定了相同样式不同值的情况,这就是样式冲突。
div{
    color:red;
}
div{
    color:blue;
}

注释:原则:通常出现样式冲突,会按CSS书写的顺序,以最后的样式为准。

  1. 样式不冲突,不会层叠。
  2. 样式冲突,遵循就近原则。 长江后浪推前浪,后面样式盖前+
二、CSS继承性

- 说明

  • 简单的理解为—“子承父业“,是指子标签会继承父标签的某些样式,如文本颜色和字号。想要设置一个可继承的属性,只需将它应用于父元素即可。
  • 举例
<style>
    div{color:pink;font-size:20px;}
</style>
<div>
    <span>
        我是什么颜色的?
    </span>
</div>

注意:

  1. 合理使用继承可以简化代码,降低CSS样式的复杂性。对于字体、字号、颜色、行距等文本类属性具有继承性,都可以在body中统一设置,然后影响文档中所有文本。
  2. 但是,并不是所有的CSS属性都可以继承,如边框、外边距、内边距、背景、定位、元素高度等与块级元素相关的属性都不具有继承性

ps:继承性的属性请查看继承性的文章 css的继承性

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

ps:优先级计算请查看另一篇文章CSS优先级计算

猜你喜欢

转载自blog.csdn.net/LmissL/article/details/108509972