2016-09-24 4 views
2

Я удалил прокладку из всех элементов TD в таблице стилей. Но у меня есть специальная таблица с cellpadding="10". Его TD визуализируется с заполнением 0px из-за вышеупомянутого стиля.Не удается сбросить стиль TD

Как я должен сбросить TD padding до нуля, чтобы он наследовал отступ 10px от cellpadding?

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-идентификаторе у вас есть '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') или similars, но они didn ' t для этого случая. – noisypixy

0

От here можно видеть, что мы можем определить inherit значение для padding, который должен inherit в padding от родителя. Насколько я знаю, это значение по умолчанию. Таким образом, вы можете установить дополнение по умолчанию, указав значение inherit.

+0

К сожалению, наследование не работает для 'cellpadding', поскольку' cellpadding' не является стилем css, а тегом HTML. –

Смежные вопросы