2014-11-05 56 views
1

兩個樣式優先我有兩個CSS樣式一個表:[CSS]:在選擇

<style> 
    tr:nth-child(even){color:blue; background-color:gray;} 
    .SelectedRow {background-color:#f8ffbc;} 
</style> 

在TR上點擊我添加SelectedRow類點擊TR。奇數TR它的工作,並改回地面,但在甚至是那些不工作

$("tbody td[name='select']").click(function() 
{ 
     $("tbody tr").removeClass("SelectedRow"); 
     $(this).closest("tr").addClass("SelectedRow");       
}); 

http://jsfiddle.net/qburkd3e/

是否有任何特定的優先級或其他的事情,我應該知道這樣做?

+0

你能顯示你的html嗎? – 2014-11-05 10:22:18

回答

4

這是因爲CSS選擇器的優先級。類和僞類值10,元素爲1.請參閱http://css-tricks.com/specifics-on-css-specificity/

在您的第一個選擇器中,使用元素和僞類。這是11的權重。你的第二個選擇器只是一個類,所以它的權重爲10.因此,你的第一個選擇器勝過第二個。

您可以通過添加元素來增加第二個重量,以賦予其相同的權重。然後,樣式表中後面的那個會優先考慮。

tr:nth-child(even){color:blue; background-color:gray;} 
tr.SelectedRow {background-color:#f8ffbc;} 
+1

我明白了。謝謝 – 2014-11-05 11:03:58