К содержанию

Навигация

Элемент дерева

Элемент дерева — один узел дерева: строка с переключателем ветви, иконкой и подписью и, у ветви, группа дочерних узлов. Отдельно от дерева узел не используют: раскрытие, роли и клавиатуру даёт корень sf-tree.

Пример

Проекты
Сайт компании

Разметка

Минимальную разметку показывает пример выше. Части узла:

  1. sf-tree-item — сам узел, прямой потомок sf-tree или sf-tree-group.
  2. sf-tree-item-container с утилитами flex items-cross-center — строка узла. По порядку в ней: переключатель (sf-icon-button или sf-tree-chevron) или sf-tree-toggle-spacer у листа, необязательная иконка sf-icon и подпись.
  3. sf-tree-item-name — подпись; занимает остаток строки.
  4. sf-tree-group — дочерние узлы ветви, сразу после строки.

Значения атрибутов узла: open — ветвь раскрыта, data-value — значение для событий дерева, data-open-icon и data-closed-icon — иконки кнопки раскрытия, aria-disabled="true" — узел недоступен.

Варианты

Иконка

Иконка sf-icon перед подписью показывает тип узла. Она берёт цвет текста узла; другой цвет задаёт переменная --sf-tree-item-icon--color.

Договор.pdf
Обложка.png

Подпись-ссылка

Если узел ведёт на страницу, подпись — ссылка <a class="sf-tree-item-name">: Enter на узле переходит по ней. Уберите ссылку из порядка Tab (tabindex="-1"): фокус получает сам узел.

Доступность

  • Роль treeitem, aria-expanded у ветви и role="group" у группы ставит скрипт дерева; вручную их задавать не нужно.
  • Кнопка раскрытия — только для мыши: tabindex="-1" и aria-hidden="true", как в примере. Иконки узла тоже скрывайте через aria-hidden="true".
  • Подпись узла — его доступное имя и текст для поиска по первым буквам; держите её короткой и уникальной среди соседей.

Классы

Что Классы
Блок sf-tree-item
Части sf-tree-item-container, sf-tree-item-name

Классы и переменные собраны из CSS выпуска и обновляются вместе с ним.

См. также

Поиск по документации

Введите минимум 2 символа

    Настройки

    Тема
    Размер шрифта
    Ширина страницы