2012-10-20 43 views
1

我在使用nth-child(n)時遇到問題。可以說我有這樣的名單:n-child沒有按預期工作

<ul> 
    <li></li> 
    <li></li> 
    <li></li> 
    <li></li> 
    <li></li> 
    <li></li> 
    <li></li> 
    <li></li> 
</ul> 

和風格:

li { 
    margin: 0 10px 0 0; 
} 
li:nth-child(6n+6) { 
    margin: 0; 
} 

出於某種原因,這樣的組合設置margin: 0,每第四li元素。我試圖實現的是爲每六分之一li設置這個零邊距。你能告訴我我的CSS應該是什麼樣子?

+1

你必須有插圖中的'li'一些流浪元素因爲它適用於我http://jsfiddle.net/duopixel/f25eE/ – Duopixel

回答

4

6n+6手段從6開始,然後做每隔6從這樣只是用6n這一點是在這種情況下相當於:

li:nth-child(6n) { 
    margin: 0; 
} 

而且,這種資源可以是有用的:http://css-tricks.com/examples/nth-child-tester/

如果這不適合你,你的選擇是錯誤的。使用更具體的東西,如body > ul > li:nth-child(6n)body > ul > li:nth-of-type(6n),它只會選擇每隔6裏的元素。

1

它實際上只針對在http://jsfiddle.net/6F37a/所示第六(雖然+6是多餘

也許是另一條規則是搞亂邊緣..

+0

好吧,這有點奇怪,因爲當我使用第四個「li」的「Inspect」時,我可以在對象檢查器中看到這個「 child(6n)'應用於這個元素 – mbajur

+1

@mbajur,你確定'ul'下面只有'li'元素,並且你的html有效ates? –