Skip to content

CdsDivider

Разделитель — тонкая линия между смысловыми частями интерфейса: секциями формы, строками списка, блоками карточки. Он ничего не делает и не требует внимания, а только показывает границу там, где отступов уже не хватает. В слот можно положить короткую подпись — например, «или» между двумя способами действия.

Storybook GitLab
Покрытие тестами: 100% — хорошее покрытие
API в спеках
11 / 11 пропсы, события, слоты и exposed, у которых есть тест
Тест-кейсы
24 юнит · 0 браузерных
Покрытие кода
100% строк · 100% ветвей замер v4.0.0-alpha.13
A11y (axe)
1 рекомендаций в 14 историях замер v4.0.0-alpha.11

Блоки карточки разделяет проп divider у CdsCard — он рисует ту же линию, не добавляя разметки. Если части экрана нужно не разделить, а разнести по разным поверхностям, возьмите CdsSurface.

Вариации ​

Внешний вид ​

Свойство variant задаёт стиль линии: solid по умолчанию, а dashed, dotted и double помечают границу как временную или служебную.

Sandbox Storybook

Толщина и длина ​

Свойство thickness задаёт толщину линии в пикселях, length — её длину. Без length разделитель занимает всю ширину родителя (или всю его высоту, если разделитель вертикальный).

Sandbox Storybook
Sandbox Storybook

Цвет и прозрачность ​

Свойство color принимает цветовой алиас (green, red, purple) или токен дизайн-системы, opacity — прозрачность от 0 до 1. Цвет уместен, когда линия несёт смысл: граница просроченного периода, разрыв в истории событий.

Sandbox Storybook

Отступ ​

Свойство inset сдвигает горизонтальный разделитель на 72 px от начала строки — чтобы линия начиналась под текстом, а не под иконкой или аватаром. У вертикального разделителя inset укорачивает линию сверху и снизу.

Sandbox Storybook

Затухание ​

Свойство gradient растворяет линию к краям. Такой разделитель мягче обычного и хорошо смотрится внутри плотных блоков, где резкая граница выглядела бы рамкой.

Sandbox Storybook

Ориентация ​

Свойство vertical разворачивает разделитель. Вертикальная линия тянется на высоту соседей, поэтому её родителю нужна высота — обычно это строка display: flex.

Sandbox Storybook

Контент ​

Содержимое слота default встаёт в разрыв линии: разделитель превращается в подпись границы — «или», дата, название секции.

Sandbox Storybook

Свойство content-offset увеличивает расстояние от контента до линии. Массив из двух значений дополнительно смещает сам контент: вниз у горизонтального разделителя, вправо — у вертикального.

Sandbox Storybook

Рекомендации ​

Сценарии использования ​

Альтернативный способ входа ​

Разделитель с подписью «или» разводит два равнозначных пути и объясняет, что второй — не продолжение первого. content-offset даёт подписи воздух, чтобы она не сливалась с кнопками.

Sandbox Storybook

Строки списка ​

Между строками списка разделитель заменяет рамки: границы видны, но список не превращается в таблицу. Линия ставится между элементами, а не после каждого — у первой и последней строки её нет.

Sandbox Storybook

Метаданные записи ​

Вертикальные разделители разбивают строку фактов — статус, дату, автора — почти не занимая места. Родительской строке достаточно display: flex и высоты, чтобы линии вытянулись по тексту.

Sandbox Storybook

Секции формы ​

Разделитель с подписью в слоте называет новую группу полей. Это спокойнее заголовка: продолжение формы читается как продолжение, а не как начало другой формы.

Sandbox Storybook

API ​

Пропсы

ИмяТипПо умолчаниюОписание
colorstring | undefined—Цвет разделителя.
contentOffsetstring | number | (string | number)[] | undefined—Увеличивает интервал между элементами контента и строками. Если передается в виде массива, второе значение смещает содержимое слота вниз (или вправо если vertical = true).
gradientboolean | undefined—Добавляет эффект затухания с обеих сторон.
insetboolean | undefined—Добавляет отступ для обычных разделителей и уменьшает максимальную высоту для вертикальных разделителей.
lengthstring | number | undefined—Длина разделителя. Единица измерения по умолчанию — пиксели.
opacitystring | number | undefined—Прозрачность разделителя.
themestring | undefined—Тема компонента
thicknessstring | number | undefined—Толщина разделителя. Единица измерения по умолчанию — пиксели.
variant"solid" | "dotted" | "dashed" | "double" | undefined'solid'Вариант отображения разделителя
verticalboolean | undefined—Отображает разделитель вертикально

Слоты

ИмяТипОписание
defaultanyТекст или контент в разрыве разделителя