2012-02-28 90 views
2

我無法讓CSS看起來正確。我想在我的桌子上交替的顏色,但它似乎並沒有工作。這是我的CSS:交替表顏色

table.className tbody tr:nth-child(even){ 
background-color: white; 
} 

table.className tbody tr:nth-child(odd){ 
background-color: grey; 
} 
+1

哪個瀏覽器( s)你在用嗎?你確定它支持n-child嗎? – Andy 2012-02-28 17:03:26

+2

你可以顯示一些周圍的CSS和HTML代碼嗎? – 2012-02-28 17:03:33

+2

參見http://www.quirksmode.org/css/contents.html並搜索「:nth-​​child()」以查看您的瀏覽器是否支持該屬性。 IE8不支持選擇器,所以在用純CSS解決這個問題之前,我會稍微等一下。 – xsl 2012-02-28 17:05:50

回答

0

你的代碼看起來不錯。可能是兩件事,你使用的IE版本是舊的(IE8和以下我相信不支持這個),或者你已經在其他地方設置了這些樣式,其中重要的是!

+1

啊,是的,我在IE8中這樣做,似乎是這個問題。恥辱IE8不支持這一點。謝謝! – John 2012-02-28 17:06:36

0

在沒有看到HTML,有幾個可能的原因:

  • 類的名稱不匹配
  • tbody標籤丟失(無論哪種方式,不需要在CSS選擇器tbody
0

有幾個原因爲什麼這可能不適合你。首先,你所使用的CSS代碼是CSS3的,不能在瀏覽器中使用的是被支持的:http://www.impressivewebs.com/css3-browser-support/

這可能無法正常工作的另一個原因是,已包含在表示該CSS的「TBODY」標籤你的html表格就是這樣設置的。這實際上是一些開發人員放棄的標籤,如果您的html表格沒有「」標籤,那麼您必須將其從CSS中移除才能使其工作。

-1

鑑於其已建立您使用IE8不支持:第n個孩子在CSS,可以實現使用jQuery更好的跨瀏覽器支持同樣的事情:

$(function() { 
    $("table.className tr:nth-child(even)").css('background-color','white'); 
    $("table.className tr:nth-child(odd)").css('background-color','grey'); 
});