Как сделать

Как добавить внутренние линии (границы) в таблицу с помощью CSS

Иллюстрация человека, использующего CSS для управления таблицей в Интернете

Возможно, вы слышали, что таблицы CSS и HTML не смешиваются. Это не вариант. Да, использование таблиц HTML для разметки больше не является лучшей практикой веб-дизайна, поскольку они были заменены стилями разметки CSS, но таблицы по-прежнему являются правильной разметкой, используемой для добавления табличных данных на веб-страницу.

Поскольку многие веб-профессионалы избегают таблиц, считая их ничем иным, как проблемами, у многих из этих специалистов мало опыта работы с этим общим элементом HTML, и они испытывают трудности, когда им приходится добавлять внутренние строки в ячейки таблицы на веб-странице.

CSS Table Borders

Иллюстрация человека, использующего CSS для управления таблицей в Интернете

Lifewire / Дерек Абелла

Когда вы используете CSS для добавления границ в таблицы, он добавляет только границы вокруг внешней части таблицы. Если вы хотите добавить внутренние строки в отдельные ячейки этой таблицы, вам нужно добавить границы для внутренних элементов CSS. Вы можете использовать тег HR, чтобы добавить строки внутри отдельных ячеек.

Чтобы применить стили, описанные в этом руководстве, вам нужна таблица на веб-странице. Затем вы создаете таблицу стилей в виде внутренней таблицы стилей в заголовке документа (если вы имеете дело только с одной страницей) или присоединяете к документу как внешнюю таблицу стилей  (если на сайте несколько страниц). Вы помещаете стили для добавления внутренних линий в таблицу стилей.

Прежде чем ты начнешь

Решите, где вы хотите, чтобы строки отображались в таблице. У вас есть несколько вариантов, в том числе:

  • Окружение всех клеток, чтобы сформировать сетку 
  • Расположение линий между столбцами
  • Просто между рядами
  • Между конкретными столбцами или строками.

Вы также можете расположить линии вокруг отдельных ячеек или внутри отдельных ячеек.

Вам также понадобится добавить свойство border-collapse в ваш CSS для вашей таблицы. Это свернет границы в одну строку между каждой ячейкой и позволит границам строк таблицы функционировать должным образом. Прежде чем что-то делать, добавьте следующий блок в ваш CSS.

таблица { 
бордюр-коллапс: коллапс;
}

Как добавить линии вокруг всех ячеек в таблице

CSS полные границы таблицы

Чтобы добавить линии вокруг всех ячеек в вашей таблице, создав эффект сетки, добавьте следующее в свою таблицу стилей:

Как добавить строки между столбцами в таблице

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

Чтобы добавить линии между столбцами для создания вертикальных линий, идущих сверху вниз по столбцам таблицы, добавьте в таблицу стилей следующее:

Таблица CSS с левой границей удалена в первом столбце

Если вы не хотите, чтобы вертикальные линии появлялись в первом столбце, вы можете использовать псевдо-класс first-child, чтобы нацелиться только на те элементы, которые появляются первыми в их ряду, и удалить границу.

td: первый ребенок, th: первый ребенок { 
border-left: none;
}

Как добавить строки между строками в таблице

CSS таблица с границами под строками

Как и при добавлении линий между столбцами, вы можете добавить горизонтальные линии между строками с одним простым стилем, добавленным в таблицу стилей, следующим образом:

Таблица CSS с удаленной границей последней строки

Чтобы убрать границу из нижней части таблицы, вы снова положитесь на псевдокласс. В этом случае вы бы использовали last-child для нацеливания только на последний ряд.

tr: last-child { 
border-bottom: нет;
}

Как добавить строки между определенными столбцами или строками в таблице

Если вам нужны только строки между конкретными строками или столбцами, вы можете использовать класс в этих ячейках или строках. Если вы предпочитаете более чистую разметку, вы можете использовать псевдокласс nth-child, чтобы выбрать конкретные строки и столбцы в зависимости от их положения.

Таблица CSS с конкретными границами

Например, если вы хотите настроить таргетинг только на второй столбец в каждой строке, вы можете использовать nth-child (2), чтобы применить CSS только ко второму элементу в каждой строке.

td: nth-child (2), th: nth-child (2) { 
рамка слева: сплошная 2px красная;
}

То же самое относится и к строкам. Вы можете выбрать конкретную строку, используя nth-child .

tr: nth-child (4) { 
border-bottom: сплошной 2px зеленый;
}

Как добавить линии вокруг отдельных ячеек в таблице

Таблица CSS с таргетингом на отдельные ячейки

Хотя вы, безусловно, можете использовать псевдоклассы для нацеливания на отдельные ячейки, самый простой способ справиться с такой ситуацией — это CSS-класс. Чтобы добавить линии вокруг отдельных ячеек, вы добавляете класс в ячейки, вокруг которых хотите создать рамку:

Похожие посты
Как сделать

Как получить возмещение за покупки в iTunes или App Store

Как сделать

Поверхностное перо не работает? Вот как это исправить

Как сделать

Как настроить и использовать Fire TV Recast

Как сделать

Как изменить рингтон по умолчанию на вашем iPhone