2
Я пишу веб-страницу, основанную на чужой таблице стилей. Таблица стилей включает в себя следующее:Табличка с таблицей стилей, запрещающая работу таблицы
table {
border-collapse: collapse;
}
th, td {
padding: 0;
}
Теперь я хочу создать таблицу с ненулевым заполнением ячейки. Но у меня возникли проблемы с переопределением этой таблицы стилей:
<table cellpadding="10">
<tr>
<td padding="10">
Foo
</td>
...
...
</tr>
</table>
и ни одна из указанных работ не работает; заполнение ячейки остается плотным нолем.
Как переопределить таблицу стилей (не используя другую таблицу стилей)?
@Walkerneo - Просто сделал, не работает. –
Можете ли вы вставить стиль inline, чтобы у вас было - '
@simnom - ах, когда я делаю это на теге td, он работает. –
ответ
Вы можете сделать в онлайн-стиль:
или назначить класс в
table
и создать для него правило:и CSS для этого:
источник
2012-01-25 16:51:33
Вы можете использовать встроенные стили (т.е. стили, объявленные в элементе), встроенные таблицы стилей (т.е. стили, объявленные на одной странице, но не непосредственно по элементам) или внешние таблицы стилей. К сожалению, стили CSS переопределяют атрибуты в большинстве случаев (я считаю, что атрибуты, такие как вы используете здесь, устарели, что означает, в основном, использовать таблицы стилей).
источник
2012-01-25 16:51:02 Chris
попробуйте более конкретно в вашем селекторе, например
выше перекроет
Узнайте больше для CSS Специфичность here.
источник
2012-01-25 16:52:13 Sotiris
Создайте новый класс для таблицы и примените его только к таблицам, которые вы хотите иметь в этом стиле.
источник
2012-01-25 16:52:45 Robert
Такая же идея, как @ZoltanToth, но его решение более изящно, поэтому вам нужно только изменить класс на столе, а не на каждый '
Просто встраивать необходимые стили:
Если вы сделаете это, вы не нуждаетесь в
padding="10"
наtd
либо. См. http://jsbin.com/exovat/edit#html для рабочего примера.Альтернативой встраиванию стилей является доступ к вашей собственной таблице стилей, которая загружается после их таблицы стилей. После этого вы можете установить идентификатор на столе, как
<table id="foo">
, а затем просто переопределить их стили в пользовательских стилях, как это:[Примечание: Свойство
border-spacing
CSS не работает с IE7 или ниже; если вам нужны эти браузеры для поддержки, вам лучше использовать какой-то хакерский метод]источник
2012-01-25 16:54:33
Приятная идея, но она получается уродливой, и текст по-прежнему раздавлен вплоть до границы ... –
@Shaul, ну тогда вы хотите просто регулярное заполнение на ячейках таблицы, а не расстояние между ячейками. Они делают несколько разные вещи (cellpacing является частью таблицы в целом, заполнение на ячейках таблицы является частью отдельных ячеек). Поэтому я оставлю свой ответ здесь, если это окажется полезным для кого-то другого, ищущего решение для размещения клеток. –
Смежные вопросы