CSS中的三大特性_继承性、层叠性、优先级

更新日期: 2018-05-25阅读: 3k标签: 优先级

一、css继承性

子元素可以直接使用父元素中的一些样式(特征),这个我们就称之为继承性。继承性一般用于设置网页上的公共信息,例如网页文字颜色、字体以及大小等。

注意点:

  • 并不是所有的属性都可以继承, 只有以color/font-/text-/line-开头的属性才可以继承
  • 在CSS的继承中不仅仅是儿子可以继承, 只要是后代都可以继承
  • 继承性中的特殊性:1、a标签的文字颜色和下划线是不能继承的,2、h标签的文字大小是不能继承的

例子:

<style type="text/css">
   #div1{
        font-size: 16px;
        color: #ff0;
        border: #ddd solid 1px;
    }
</style>
<div id="div1">
          这是div1的内容
    <div id="div2">
        div1的后代div2中的内容
    </div>
</div>

结果为:div2同样继承了div1的font-size和color样式 ,但是border没有继承。那么有哪些属性不能继承,哪些能继承呢?

不可继承的:display、margin、border、padding、background、height、min-height、max-height、width、 min-width、max-width、overflow、position、left、right、top、bottom、z-index、float、clear、table-layout、 vertical-align、page-break-after、page-bread-before和unicode-bidi。 
内联元素可继承:letter-spacing、word-spacing、white-space、line-height、color、font、font-family、font-size、font-style、font-variant、font-weight、text-decoration、text-transform、direction。 
终端块状元素可继承:text-indent和text-align。 
列表元素可继承:list-style、list-style-type、list-style-position、list-style-image。


二、css层叠性

层叠性只有在多个选择器选中"同一个标签", 然后又设置了"相同的属性", 才会发生层叠性。层叠性就是CSS处理冲突的一种能力,层叠性是有优先级来决定最终的显示样式。

例子: 

<style type="text/css">
div{
    background-color:#ff0;
}
.test{
    width: 100px;
    height: 100px;
    border: 1px solid #666;
}
</style>
<div class="test"></div>

结果为:  虽然设置了两个不同的选择器,但是两个选择器内设置的样式同样都被运用上。


三、css优先级

在现实生活中当多条相互冲突的规则施加到同一事物时,也必须制定一个原则,也就是优先级。 css优先级的判断方式:

1.  间接选中就是继承时,谁离目标标签近就听谁的。
2.  间接选中,谁离目标标签近就听谁的
3.  都是直接选中时,并且是同类型的选择器时,谁写在后面就听谁的。当是不同类型的选择器时,按照优先级: id>类>标签>通配符>继承>浏览器默认


关于通配符:

比如CSS开头写一句 *{margin:0;padding:0;}  用 * 来匹配全部标签 。


什么是优先级的权重?

作用: 当多个选择器混合在一起使用时, 我们可以通过计算权重来判断谁的优先级最高。


权重的计算规则

首先先计算选择器中有多少个id, id多的选择器优先级最高
如果id的个数一样, 那么再看类名的个数, 类名个数多的优先级最高
如果类名的个数一样, 那么再看标签名称的个数, 标签名称个数多的优先级最高
如果id个数一样, 类名个数也一样, 标签名称个数也一样, 那么就不会继续往下计算了, 那么此时谁写在后面听谁的

关于!important用于提高某个直接选中标签的优先级,要写属性值分号的前面。


链接: https://www.fly63.com/article/detial/822

Js执行运算的先后顺序,JavaScript运算符优先级

​javascript 运算符优先级,是描述在计算机运算计算表达式时执行运算的先后顺序。 先执行具有较高优先级的运算,然后执行较低优先级的运算。例如,我们常说的先执行相乘和除,再执行加减运算。

css选择器优先级高低排列_css样式权重计算和!important属性

css的选择器是有权重(即优先级)的,在不同选择器的样式出现冲突时候,会采用权重高的选择器设置样式,而优先级不仅仅只是:“行间>内部>外部、ID>class>元素”。css优先级到底是怎么计算的呢?

js中this的绑定规则及优先级

this绑定规则:函数调用位置决定了this的绑定对象,必须找到正确的调用位置判断需要应用下面四条规则中的哪一条。默认绑定、隐式绑定:另一条需要考虑的规则是调用位置是否有上下文对象

css样式的继承性、层叠性 、优先级

css样式的继承性:给父元素设置一些属性,子元素也可以使用。应用场景:一般用于设置网页上的一些共性信息,例如网页的文字颜色,字体,文字大小等内容。优化代码,降低工作量

CSS优先级的两种理解方式

优先级就是分配给指定的 CSS 声明的一个权重,它由 匹配的选择器中的 每一种选择器类型的 数值 决定。而当优先级与多个 CSS 声明中任意一个声明的优先级相等的时候,CSS 中最后的那个声明将会被应用到元素上。

了解css3样式表写法和优先级

css3和css有什么区别?首先css3是css(层叠样式表)技术的升级版本,而css是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。然后是内容上css3主要包括盒子模型、列表模块

CSS三大特性:层叠 继承 优先级

如果一个属性通过两个相同选择器设置到同一个元素上,相同的属性就会出现冲突,那么这个时候一个属性就会将另一个属性层叠掉,采用的是就近原则

React中的优先级

UI产生交互的根本原因是各种事件,这也就意味着事件与更新有着直接关系。不同事件产生的更新,它们的优先级是有差异的,所以更新优先级的根源在于事件的优先级。一个更新的产生可直接导致React生成一个更新任务,最终这个任务被Scheduler调度

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!