2010-02-10 209 views
1

我有一些CSS是這樣的: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裏的一部分,但#navbar ul li & #navbar ul are。我相信它也曾經工作過。它通過W3C驗證。這是明顯的/愚蠢的?

回答

7

按照CSS2 spec的選擇是不區分HTML文檔中敏感的,但是是區分大小寫的XHTML文檔。你的第三條規則拼寫爲navbar,這與實際的元素名稱navBar不同。

此外,一些瀏覽器實際上有一個錯誤,並將選擇器視爲區分大小寫,即使文檔是以HTML的形式提供的。

5

我不知道,但嘗試是區分大小寫的,寫

#navBar ul li a 
+0

+1。在幾秒鐘之內擊敗我! –

+0

是的,它發生了:D –

+1

我會給Franci一個更完整的答案,但謝謝。 +1 –