Перейти к основному содержимому

Таблицы CSS

HTML-таблицы можно значительно улучшить с помощью CSS.

Пример

Таблица, оформленная с объединёнными границами, отступами, чередующимися строками и цветным заголовком.

Prompt
HTML-страница с красиво оформленной таблицей. Во внутреннем блоке <style> объедините границы таблицы, сделайте её на всю ширину, задайте th/td светлые границы и внутренний отступ с текстом, выровненным по левому краю, затените чётные строки светло-серым, а строке заголовка задайте зелёный фон с белым текстом. Добавьте таблицу с колонками Компания, Контакт, Страна и несколькими строками.
Результат: полная HTML-страница

Границы таблицы CSS

Свойство border задаёт ширину, стиль и цвет границ таблицы.

Это сокращённая запись для border-width, border-style (обязательно) и border-color.

Пример

Сплошная граница 1px задана для элементов <table>, <th> и <td>.

Prompt
HTML-страница, добавляющая границы к таблице. Во внутреннем блоке <style> задайте элементам <table>, <th> и <td> сплошную границу 1px. Добавьте небольшую таблицу с заголовком и двумя строками данных.
Результат: полная HTML-страница

Цвет границы таблицы CSS

Вы также можете задать цвет границ таблицы.

Пример

Сплошная зелёная граница 1px задана для элементов table, th и td.

Prompt
HTML-страница, придающая таблице зелёные границы. Во внутреннем блоке <style> задайте элементам <table>, <th> и <td> сплошную зелёную границу 1px. Добавьте небольшую таблицу с заголовком и двумя строками данных.
Результат: полная HTML-страница

Почему двойные границы?

В примерах выше у таблиц двойные границы. Это происходит потому, что элементы <table>, <th> и <td> имеют собственные отдельные границы. В следующем примере показано, как их убрать.


Объединение границ таблицы CSS

Свойство border-collapse определяет, объединяются ли границы таблицы в одну границу или остаются раздельными, как в стандартном HTML.

Оно может принимать следующие значения:

  • separate — значение по умолчанию. Каждая ячейка показывает свои собственные границы.
  • collapse — границы объединяются в одну там, где это возможно.

Пример

Установка border-collapse: collapse убирает двойные границы.

Prompt
HTML-страница, объединяющая границы таблицы в одну границу. Во внутреннем блоке <style> задайте table, th и td сплошную границу 1px и установите border-collapse таблицы в collapse, чтобы двойные границы объединились в одну. Добавьте небольшую таблицу.
Результат: полная HTML-страница

Внутренний отступ таблицы CSS

Чтобы управлять расстоянием между границей и содержимым ячеек, используйте свойство padding на элементах <td> и <th>.

Пример

Каждая ячейка получает внутренний отступ 10px.

Prompt
HTML-страница, добавляющая внутренний отступ в ячейках таблицы. Во внутреннем блоке <style> задайте table/th/td сплошную границу 1px с объединёнными границами, а th и td — внутренний отступ 10px. Добавьте таблицу с колонками Имя, Фамилия и Сбережения и несколькими строками.
Результат: полная HTML-страница

Расстояние между границами CSS

Свойство border-spacing задаёт расстояние между границами соседних ячеек.

Примечание: Это работает только когда border-collapse установлено в separate.

Пример

Ячейки расположены на расстоянии 15px друг от друга.

Prompt
HTML-страница, задающая расстояние между границами ячеек таблицы. Во внутреннем блоке <style> задайте table/th/td сплошную границу 1px, а на таблице установите border-collapse в separate и border-spacing в 15px. Добавьте небольшую таблицу.
Результат: полная HTML-страница

Внешняя граница таблицы CSS

Если вы хотите границу только вокруг таблицы, а не внутри неё, задайте свойство border только на элементе <table>.

Пример

Только у таблицы есть граница; у ячеек её нет.

Prompt
HTML-страница с границей только вокруг внешней стороны таблицы, а не ячеек. Во внутреннем блоке <style> задайте только элементу <table> сплошную границу 1px (без границы на th или td). Добавьте небольшую таблицу.
Результат: полная HTML-страница