美文网首页
继承性与层叠性

继承性与层叠性

作者: 水之飞亦 | 来源:发表于2019-11-15 23:32 被阅读0次

1.继承性和层叠性

1.继承性

  • 可以继承上级的css属性元素,结构样式不会继承,只会继承一些文字样式
    例如:容器div设置了属性,嵌套的其他标签不设置任何css属性,其结果展示却是下图的效果。这说明div的css属性作用到了其子类。
效果图

通过查看控制台,我们发现,确实是这样,如下图:


控制台展示图

2.层叠性

(1)选中时

  • 当一个标签被多个选择器选中时,那么该如何呈现呢,这就涉及到了选择器的权重问题。

  • 其中基础选择器:id>类>标签,通配符最低
    例如这段代码: <p class="one" id="ppp">层叠性</p>

    p {
      color: red;
     }
    .one {
      color: yellow;
     }
    #ppp {
      color: blue;
    }
    
控制台展示图:权重比较低的选择器不起作用,被划掉了。
  • 当有高级选择器时,需通过计算基础选择器的个数来计算权重,依次比较id,类,标签的个数。先比较id个数,取其个数多的;当id个数相同时,比较;类也相同则比较标签

  • 权重相同时,由于代码从上到下执行,所以下边的起作用

    <div class="div1" id="id1">
        <div class="div2" id="id2">
            <div class="div3" id="id3">
                <p>我的颜色</p>
            </div>
        </div>
    </div>
    

    如下图计算,id选择器个数最多,所以第一个选择器起作用,为蓝色


    权重计算

注意

  • 当有交集时,所有的都要算上比如 div2.#id2,那么算是1个id+1个类

  • 当有并集时,只计算要比较的标签,不相关的可以先忽略

    交集:id,类,标签的值为:1,3,1
    .div1 .div2#id2 .div3 p {
        color: yellow;
    }
    
    并集:id,类,标签的值为:1,3,1
    .div1 .div2#id2 .div3 p, .ppp p {
        color: yellow;
    }
    等价于下边两个选择器
    .div1 .div2#id2 .div3 p {
        color: yellow;
    }
    /*.ppp p就不参与比较了*/
    .ppp p {
        color: yellow;
    }
    

(2)未选中时

  • 没有选中到指定标签,则从上级查找,找那个离的最近的起作用。多个选择器都未选中,还是得去比较权重,还相同,则看代码执行顺序。

(3)* 关键值!important

  • 给单一属性添加,将属性的权重提高到最大。

  • 未选中时,不起作用。还是得去离的最近的上级中查找

    .div1 .div2#id2 .div3 p {
        color: yellow !important; 
    }
    

选中时: 优先级: !important > 权重>顺序
未选中时: 优先级:上级近> !important > 权重>顺序

相关文章

  • CSS三大特性

    CSS全称 Cascading StyleSheet层叠样式表 继承性 层叠性 优先级 继承性 1.什么是继承性?...

  • 继承性与层叠性

    1.继承性和层叠性 1.继承性 可以继承上级的css属性元素,结构样式不会继承,只会继承一些文字样式例如:容器di...

  • CSS特性 & CSS优先级算法

    CSS特性 层叠性 继承性 优先级 CSS层叠性 在css样式中,与样式的调用顺序无关,与样式的定义顺序有关。 层...

  • 2022-02-03 CSS第三天

    CSS的三大特性 层叠性 继承性 行高的继承性 优先级 权重练习小例子

  • CSS的三大特性

    1 继承性 1 什么是继承性2 所有的属性都可以继承吗3 孙子能继承爷爷的属性吗 2 层叠性 1 什么是层叠性2 ...

  • 第二章 CSS基础

    Cascading Style Sheet —— 层叠样式表 Css的特性 层叠性 继承性 重要性、 Css基本规...

  • 2.CSS特性-CSS进阶

    二、CSS特性 CSS具有两大特性:继承性层叠性 1.继承性 CSS的继承性,指的是子元素继承父元素的某些样式属性...

  • css的三大特性

    css层叠性 css继承性 css优先性 1.css层叠性 所谓层叠性是指多种CSS样式的叠加。 如果一个属性通过...

  • CSS三大特性

    CSS有三大特性,分别是继承性,层叠性,优先级。 继承性 继承性是指指被包在内部的标签将拥有外部标签的样式性,即后...

  • CSS的继承性和层叠性

    1.继承性2.层叠性 1. 继承性 color,text-xxx,font-xxx,line-xxx的属性是可以继...

网友评论

      本文标题:继承性与层叠性

      本文链接:https://www.haomeiwen.com/subject/gjgjictx.html