2016-09-24 63 views
2

我已經從樣式表中的所有TD元素中刪除了填充。但我有一個特殊的表格,有cellpadding="10"。由於上述風格,其TD呈現爲具有0px填充。無法重置TD樣式

我應該如何重置TD填充爲空,所以它從cellpadding繼承10px填充?

td {padding:0} 
 

 
#specialtable td { 
 
    /* What should I write here? */ 
 
}
<table id="specialtable" cellpadding="10" style="border:1px solid #555555"> 
 
    <tr> 
 
    <td>test</td> 
 
    </tr> 
 
</table>

+0

Typo:在你的CSS中有'#specialtable'(小寫字母't'),但是在你的HTML中,id是'specialTable'(大寫'T')。 – noisypixy

+0

@noisypixy這只是一個錯字 – kukkuz

回答

1

可以使用:not pseudo-class定義所有td填充除了那些下#specialTable

table:not(#specialTable) td { 
 
    padding: 0; 
 
}
<table id="specialTable" cellpadding="10" style="border:1px solid #555555"> 
 
    <tr> 
 
    <td>test</td> 
 
    </tr> 
 
</table>

+0

謝謝你在我的情況下工作正常。但總的來說,你有什麼想法如何重置以前的風格爲無? –

+0

@AliSheikhpour通常你可以使用[initial](https://developer.mozilla.org/en-US/docs/Web/CSS/initial)關鍵字(例如'padding:initial')或類似的名字,但是他們沒有使用[爲這種情況工作。 – noisypixy

0

here可以看出,我們可以定義爲paddinginherit價值,應該從父inheritpadding。據我所知,這是默認值。因此,您可以通過爲其設置inherit值來將填充設置爲默認值。

+0

不幸的是,繼承對'cellpadding'不起作用,因爲'cellpadding'不是CSS樣式,而是HTML標籤。 –