2012-05-05 47 views
1

我的問題說明了一切。我是CSS新手。我嘗試使用下面的代碼,但它不工作:如何使用:不是選擇器在CSS中?

ul.verticalNav { 
    /*declaration*/ 
} 

ul.verticalNav li { 
    /*declaration*/ 
} 

ul.verticalNav li a { 
    /*declaration*/ 
} 

ul.verticalNav li a:not(:nth-last-child(1)) { 
    border-bottom: 1px solid #323232; 
} 

ul.verticalNav li a:not(:nth-last-child(1))也沒有創造邊界。 HTML是:

<ul class="verticalNav"> 
    <li><a href="#">Home</a></li> 
    <li><a href="#">View Profile</a></li> 
    <li><a href="#">Edit Profile</a></li> 
    <li class="bottomLeftMenuItem"><a class="bottomLeftMenuItem" href="#">Search Profile</a></li> 
</ul> 

我無法找到問題。

在此先感謝。


我使用的是Firefox 12.0和谷歌瀏覽器18.0.1025.168米。

+1

你可以用':last-child'來代替':nth-​​last-child(1)' – FelipeAls

回答

7

你的選擇是錯誤的,它應該是

ul.verticalNav li:not(:nth-last-child(1)) a { 
    border-bottom: 1px solid #323232; 
}​ 

那是因爲你的標記,<a>總是將是其母公司<li>的最後一個孩子。你想要的是將樣式應用到<a> s裏面的任何<li>這不是最後一個孩子。

+0

非常好,非常感謝你和謝謝你的解釋,它幫助我理解標籤的順序和關係。 –