zoukankan      html  css  js  c++  java
  • 关于css问题继承、权值问题

    一、Css的继承

    1. .codeClass{color:#000000;}
    2. <p class="codeClass"><span>你好</span>世界</p>

      Span继承了,来自codeClass的color。也就是说,子元素会从父元素继承属性,当然不是所有的CSS属性都有继承性,文本属性(color、font、line-height、text-align、text-decoration、other)是具有继承性的,而自身属性(width、height、margin、padding、border、background)和显示属性(display、position、float、list-style)是不具有继承性的。

    二、Css选择器的权重的表现,是根据id(id选择器)>class(类选择器)>body(元素选择器)

      1、Id选择器的权重为100

      2、Class选择器的权重为10

      3、Body选择器的权重为1

      (1)不同权重时的表现

    1. p{color:#000;}
    2. .codeClass{color:#cccccc;}
    3. #codeId{color:#ffffff;}
    4. <p class="codeClass" id="codeId">你好世界</p>

      最终显示的效果,你好世界的color为color:#ffffff,因为ID的权重是最高的,.codeClass和p都会被codeId屏蔽掉。

      #codeid(权重100)>.codeClass(权重10)>p(权重1)

      (2)相同权重时的表现

    1. p{color:#000;}
    2. p{color;#fff;}
    3. <p>你好世界</p>

      最终的显示效果,你好世界的color为color;#fff,因为css会当权重相同时,css会遵循层叠的原则,选择最新书写的css为最终显示效果。

      (3)权重的相加

    1. .codeClassing{color:#ffffff;}
    2. .codeClass span{color:#cccccc;}
    3. <p class="codeClass"><span class="codeClassing">你好</span>世界</p>

      最终的显示效果,你好世界的color为color:#cccccc,因为.codeClass(权重10)+span(权重1)=11,而.codeClassing(权重10),.codeClass span>.codeClassing的所以最后显示效果为.codeClass span

      总结:根据css权重的计算,可以更好的控制css在页面的表现效果,首先css开始书写时,使用权重最低的元素选择器,再使用类选择器,最后使用组合选择器,类选择器+元素选择器。这样的书写习惯,可以更好的控制CSS,不容易造成编程者无法理解css的显示权重。





  • 相关阅读:
    [转]The Machine SID Duplication Myth (and Why Sysprep Matters)
    The Machine SID Duplication Myth (and Why Sysprep Matters)
    [转]Shell(Bash) mysql数据库操作
    [转]GNU Sourcehighlight 语法高亮代码
    [原]DRBD双主模式问题
    mpstat
    DRBD试用
    drbd双主模式问题
    虚IP的添加和删除
    为什么5%的技术人员开发效率是其他95%的20倍?
  • 原文地址:https://www.cnblogs.com/Zjingwen/p/4455646.html
Copyright © 2011-2022 走看看