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的显示权重。





  • 相关阅读:
    HTML5结构
    HTML5新增的非主体元素header元素、footer元素、hgroup元素、adress元素
    CF GYM 100703G Game of numbers
    CF GYM 100703I Endeavor for perfection
    CF GYM 100703K Word order
    CF GYM 100703L Many questions
    CF GYM 100703M It's complicate
    HDU 5313 Bipartite Graph
    CF 560e Gerald and Giant Chess
    POJ 2479 Maximum sum
  • 原文地址:https://www.cnblogs.com/Zjingwen/p/4455646.html
Copyright © 2011-2022 走看看