Как Вы указываете дополнение таблицы в CSS? (таблица, не дополнение ячейки)

Мы работаем Buildbot - Trac на работе. Я не использовал его слишком много, так как моя кодовая база еще не является частью цикла выпуска. Но мы запускаем тесты на различных средах (OSX/Linux/Win), и это посылает электронные письма —, и это записано в Python.

59
задан Brian Tompsett - 汤莱恩 18 January 2017 в 22:07
поделиться

8 ответов

Самый простой / лучший поддерживаемый метод - использовать

Метод css: border-spacing (не поддерживается IE Не думаю)

    
foobar

Изменить: если вы просто хотите заполнить содержимое ячейки, а не пробел, вы можете просто использовать

<table cellpadding="10">

ИЛИ

td {
    padding: 10px;
}
44
ответ дан 24 November 2019 в 18:22
поделиться

Вы можете установить поле для таблицы. В качестве альтернативы, оберните таблицу в div и используйте заполнение div.

25
ответ дан 24 November 2019 в 18:22
поделиться

Вы не можете ... Может быть, если вы разместили изображение желаемого эффекта, есть другой способ добиться этого.

Например, вы можете обернуть всю таблицу в DIV и установите отступ в div.

6
ответ дан 24 November 2019 в 18:22
поделиться

Вот что вам следует понять о таблицах ... Это не дерево вложенных независимых элементов. Они представляют собой единый составной элемент. В то время как отдельные TD ведут себя более или менее как блочные элементы CSS, промежуточный материал (все, что находится между TABLE и TD, включая TR и TBODY) неделим и не попадает ни в inline , ни в блок. . Никакие случайные HTML-элементы не допускаются в этом пространстве других измерений, а размер такого пространства других измерений вообще не настраивается с помощью CSS. Только свойство HTML cellspacing может даже получить это, и это свойство не имеет аналогов в CSS.

Итак, чтобы решить вашу проблему, я бы предложил либо оболочку DIV, как предлагает другой плакат, либо если вам абсолютно необходимо сохранить его в таблице, у вас есть этот уродливый мусор:

<style>
    .padded tr.first td { padding-top:10px; }
    .padded tr.last td { padding-bottom:10px; }
    .padded td.first { padding-left:10px; }
    .padded td.last { padding-right:10px; }
</style>

<table class='padded'>
    <tr class='first'>
        <td class='first'>a</td><td>b</td><td class='last'>c</td>
    </tr>
    <tr>
        <td class='first'>d</td><td>e</td><td class='last'>f</td>
    </tr>
    <tr class='last'>
        <td class='first'>g</td><td>h</td><td class='last'>i</td>
    </tr>
</table>
24
ответ дан 24 November 2019 в 18:22
поделиться

С помощью css таблица может иметь заполнение независимо от ее ячеек.

Свойство заполнения не наследуется его дочерними элементами.

Итак, определение:

table {
    padding: 5px;
}

Должно работать. Вы также можете специально указать браузеру, как заполнять (или в данном случае не заполнять) ваши ячейки.

td {
    padding: 0px;
}

РЕДАКТИРОВАТЬ: Не поддерживается IE8. Извините.

2
ответ дан 24 November 2019 в 18:22
поделиться

Забавно, я вчера делал именно это. Вам просто нужно это в вашем файле css

.ablock table td {
     padding:5px;
}

, а затем обернуть таблицу в подходящий div

<div class="ablock ">
<table>
  <tr>
    <td>
5
ответ дан 24 November 2019 в 18:22
поделиться

Вы можете попробовать свойство border-spacing. Это должно делать то, что вы хотите. Но вы можете увидеть этот ответ .

1
ответ дан 24 November 2019 в 18:22
поделиться

CSS действительно не позволяет вам делать это на уровне таблицы. Обычно я указываю cellspacing = "3" , когда хочу добиться этого эффекта. Очевидно, это не решение css, так что принимайте его за то, чего оно стоит.

1
ответ дан 24 November 2019 в 18:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: