CSS选择器不起作用

时间:2010-02-10 17:31:46

标签: css xhtml

我有一些像这样的CSS:

#navBar ul
{
    list-style-type:none;
    margin:0;
    padding:0;
}

#navBar ul li
{
    border: thin dashed #ffff00;
    display:inline;
    margin:0;
    padding:0;
}

#navbar ul li a
{
    border: 1px solid #707070;
    text-decoration: none;
    padding: 0;
    margin: 0;
    background-color: #909090;
}

HTML就像这样:

    <div id="navBar">
        <ul>
        <li><a href="#" >Home</a></li>
        <li><a href="#" >Services</a></li>
        <li><a href="#" >About us</a></li>
        <li><a href="#" >Blog</a></li>
        <li><a href="#" >Contact</a></li>
        </ul>
    </div>

出于某种原因,#navbar ul li的一部分没有被应用,但#navbar ul li&amp; #navbar ul是。我确信它过去也有用。它通过了w3c验证。是明显的/愚蠢的吗?

2 个答案:

答案 0 :(得分:7)

根据CSS2 spec,选择器在HTML文档中不区分大小写,但在XHTML文档中区分大小写。您的第三条规则拼写navbar,这与实际的元素名称navBar不同。

此外,某些浏览器实际上存在错误,并且即使文档以HTML格式传递,也会将选择器视为区分大小写。

答案 1 :(得分:5)

我不确定,但尝试区分大小写并写

#navBar ul li a