2014-10-28 161 views
1

我使用奇數和偶數bgcolor作爲表格。刪除背景顏色

我有一個單一的表格結構,我在做奇數,甚至bgcolor。我不希望bgcolor(想要白色)在該表格之間的幾個<tr>之間。

如果我在<tr><td>中放入任何班級,js會覆蓋它。

嗨,我正在做什麼。

$(document).ready(function() { 
    $(".myTable tr:odd").addClass("myTable-alt"); 
}); 

/CSS/

.myTable-alt { 
    background-color: #F8F8F8; 
    overflow: hidden; 
    padding-top: 5px; 
} 

回答

0

!important是一種方式,另一種方式是改變你的CSS。

.myTable-alt { 
    background-color: #F8F8F8; 
    overflow: hidden; 
    padding-top: 5px; 
} 

.myTable-alt.no-color { /* for elements with BOTH classes */ 
    background-color: #fff; 
} 

以及您希望有一個白色背景上<tr>,他們可以看起來像:

<tr class="myTable-alt no-color"> 

因爲odd<tr> S的所有將會有.myTable-alt類,和您可以將第二個類添加到您想要修改的幾個類中。

注:如果元素的background-color相同.myTable-alt,那麼這就是爲什麼even行不是白色的。如果是這樣的話,那麼你可以強制它想:

$(document).ready(function() { 
    $(".myTable tr:odd").addClass("myTable-alt"); 
    $('.myTable tr:even').css('background-color', '#fff'); 
}); 
0

你可以在新類中使用一個更具體的選擇像tr.newClass或CSS !important關鍵字,這樣的風格不會被.myTable-alt覆蓋。

對於例如,

table tr.newClass{ 
    background-color: #FFF; 
} 

.newClass{ 
    background-color: #FFF !important; 
} 
0

如果您不需要支持IE8,您可以使用nth-child斑馬條紋的表格。

tr:nth-child(odd) { 
    background-color: #F8F8F8; 
} 

您可以創建一個類來覆蓋所需行上的顏色。只要確保這個選擇器定義在樣式表中的上面一個之後。

tr.special { 
    background-color: #FFF; 
} 

jsFiddle demo