2015-10-15 60 views
0

我有以下標記:既不是第n個孩子,也沒有第n-的型

<div class="chat-area"> 
    <div class="username-area"> 
    </div> 
    <div class="message-area"> 
    </div> 
    <div class="options-area"> 
    </div> 
</div> 
<div class="chat-area"> 
    <div class="username-area"> 
    </div> 
    <div class="message-area"> 
    </div> 
    <div class="options-area"> 
    </div> 
</div> 

我試圖交替#00A6FF#27FF00之間的username-area的背景顏色。在我的CSS,我有:

.chat-area .username-area:nth-child(odd){ 
    background-color: #00A6FF; 
} 

.chat-area .username-area:nth-child(even){ 
    background-color: #27FF00; 
} 

但所有的username-area的div被設置爲#00A6FF。我嘗試使用:nth-of-type,我也嘗試使用表達式(2n+12n+2)而不是'奇怪'和'偶數',但我沒有計算出這個結果。我看了一下這個網站上的幾個問題,但是我認爲解決方案沒有幫助或者似乎解決了不適用於我的代碼的問題。

+0

因爲他們是第一個'div'(其類型)和第一個孩子每個父母下。所以顯然只有'odd'選擇器纔會被應用。 CSS選擇器不會跨父母工作。 – Harry

回答

1

只要給一轉的ommelete :)

.chat-area:nth-child(odd) .username-area{ 
    background-color: #00A6FF; 
} 

.chat-area:nth-child(even) .username-area{ 
    background-color: #27FF00; 
} 

這是因爲奇數和偶數元素是.chat-area,不username-area

+0

啊!傻我!是的,這是完美的,我會盡快接受你的回答。謝謝! – SoSimple

+0

不客氣:) –

2

只是讓一個:

.chat-area:nth-child(odd) .username-area{ 
     background-color: #00A6FF; 
    } 

    .chat-area:nth-child(even) .username-area{ 
     background-color: #27FF00; 
    } 

@Marcos佩雷斯古德是快:)

+0

對不起,我upvote你,並給一些聲譽:) –

+0

謝謝:)這是非常友好和熱烈歡迎我:) – orgertot