Wowbeing
V2EX  ›  CSS

一个CSS优先权的问题

  •  
  •   Wowbeing · Apr 17, 2011 · 6356 views
    This topic created in 5531 days ago, the information mentioned may be changed or developed.


    在css中设置为 #A { color:blue } #B{ color:red } 最后“CCC”字母怎么会是显示为蓝色的呢?

    遇到这样的情况浏览器是如何判断的呢 ?
    11 replies    1970-01-01 08:00:00 +08:00
    icyflash
        1
    icyflash  
       Apr 17, 2011
    是红色的啊,你用的什么浏览器
    26z
        2
    26z  
       Apr 17, 2011
    应该显示的是红色,级别相同的话就近原则,所以使用#B的样式。
    icyflash
        3
    icyflash  
       Apr 17, 2011
    看下你CSS写错没。。。

    http://jsfiddle.net/icyflash/Lw79y/
    lianghai
        4
    lianghai  
       Apr 17, 2011
    用 Firebug 或是别的什么检查器检查一下它到底继承了哪条 CSS。可能你在别的地方写了别的规则。
    romoo
        5
    romoo  
       Apr 17, 2011
    是这样写的:

    #a p{color:blue;}

    #b p{color:red;}

    改成下面这样就好了:

    #a p{color:blue;}

    p#b{color:red;}
    lianghai
        6
    lianghai  
       Apr 17, 2011
    @romoo ……原来有隐情……
    lianghai
        7
    lianghai  
       Apr 17, 2011
    楼主可能需要看一下 CSS 的 selector 的具体行为:
    http://www.w3.org/TR/css3-selectors/
    romoo
        8
    romoo  
       Apr 17, 2011
    @lianghai 刚才网络问题,少发了几个字,我只是猜测一下原因。
    lianghai
        9
    lianghai  
       Apr 17, 2011
    @romoo 我还以为你和楼主是同伴……
    romoo
        10
    romoo  
       Apr 17, 2011
    @lianghai -_-b
    shellex
        11
    shellex  
       Apr 17, 2011
    允许嵌入gist?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   907 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 21:23 · PVG 05:23 · LAX 14:23 · JFK 17:23
    ♥ Do have faith in what you're doing.