Границы таблицы
Класс table-border добавляет таблице вертикальные линии между колонками и
рамку по краям: строки получают границу сверху и снизу, ячейки — слева и
справа. Берите его для плотных таблиц с данными, где колонки нужно разделить.
Пример
Слева таблица с классом table: только горизонтальные линии под строками.
Справа добавлен table-border: рамка у каждой ячейки.
Классы
| Класс | CSS | Значения |
|---|---|---|
table-border |
.table-border > :not(caption) > * { border-width: var(--sf-px) var(--sf-0) }; .table-border > :not(caption) > * > * { border-width: var(--sf-0) var(--sf-px) } |
— |
Условия (что это): ширина экрана — нет; состояния — нет.
Классы и переменные собраны из CSS выпуска и обновляются вместе с ним.
Переменные
Классы читают эти токены темы. Изменённый токен меняет все места, где он используется, — классы, компоненты и тему; задайте его в теме проекта, а не на отдельном элементе. Все токены — на странице Все токены.
| Переменная | Значение по умолчанию |
|---|---|
--sf-px |
1px |
--sf-0 |
0 |
Применение
Класс ставят на элемент table вместе с table, который задаёт цвет линий и
отступы ячеек:
<table class="table table-border">
<thead>…</thead>
<tbody>…</tbody>
</table>
Линии берут цвет --sf-table-border-color из класса table — по умолчанию
роль outline-variant. Чтобы перекрасить линии одной таблицы, задайте эту
переменную на ней.
Ограничения
- Рамка складывается из границ строк и ячеек и видна целиком только при
объединённых границах — режиме по умолчанию у таблиц на странице с классом
table. Сborder-separateграницы строк не рисуются. - Класс действует на прямых потомков:
thead,tbody,tfootи их строки. Подписьcaptionрамку не получает. - Префиксов ширины экрана и состояния нет.