2014-10-16 52 views
3

我有給定secondclass的元素帶有灰色背景,我只希望這個類的元素具有紅色背景。我不能使用nth-child()選擇器,因爲這些元素可能不是唯一的內部父項。從他們的類型中獨立選擇一個類別的元素

我已經試過如下:

.secondclass { 
    background-color:#aaa; 
} 

.secondclass:nth-of-type(2n+1) { 
    background-color:red; 
} 

這工作得很好,直到我把同類型的secondclass內父(即一個div)的元素。這是合理的,因爲nth-of-type()指類型而不是類:

<div>some text</div> 
<div class="secondclass"></div> 
<div class="secondclass"></div> 

Fiddle

是否有一個純CSS的方式來選擇secondclass子集的僅偶數元素,獨立於它們的類型?

+0

可能重複http://stackoverflow.com/questions/10921809/css3-nth-of-type-限制類) – 2014-10-16 14:41:37

回答

1

我看到的只有一種方式是使用不同的HTML標籤。 像:

<div>some text</div> 
<span class="secondclass"></span> 
<span class="secondclass"></span> 

演示:

JS fiddle

但沒有純CSS的解決方案

+0

這是我的第二選擇,如果沒有純粹的css解決方案是可行的。 – Giorgio 2014-10-16 15:09:37

2

爲什麼不乾脆讓2類偶數和不均勻的,只是分配這些類的地方是必要的?否則,試圖找出如何在CSS內進行邏輯檢查似乎是一個很長的繞道,以達到相同的結果。

「偶」元素的類將具有紅色背景,「不均勻」類將具有灰色背景。

.uneven { 
    background-color:#aaa; 
} 

.even { 
    background-color:red; 
} 

和的div:

<div>some text</div> 
<div class="uneven"></div> 
<div class="even"></div> 
[CSS3類型的第n限於類(的
相關問題