Publish Fast Tabler Docker image / build-and-push-fast (push) Successful in 1m52s
3.2 KiB
3.2 KiB
Таблицы: UX/UI по Tabler и проекту
Рекомендации по формированию таблиц в приложении — Tabler Tables, Preview.
Классы (Tabler)
- Базовые:
table card-table table-vcenter table-nowrap mb-0 - Чередование строк:
table-striped— улучшает читаемость - Компактный режим:
table-sm— меньше отступы в ячейках - Обёртка:
table-responsiveвокруг<table> - Обрезка длинного текста: для ячейки использовать
td-truncate(Tabler) илиtext-truncate+max-width
Компонент DataTable
Используйте DataTable там, где подходит декларативное описание колонок и общие действия (сортировка, выбор, пагинация):
columns:{ key, title, sortable?, icon?, render?, tooltip? }— для подсказки по заголовку задайтеtooltipstriped={true}по умолчаниюcompact={true}— компактные ячейки- Колонка «Действия» получает класс
td-actions(фиксированная минимальная ширина в проекте)
Информативность и лаконичность
- Заголовки колонок — короткие, при необходимости уточнение через
tooltip(например, значение иконки замка). - Действия в строке — иконки с
Tooltipиaria-label; колонка «Действия» справа, без лишнего текста. - Копирование — кнопка/иконка копирования рядом с ячейкой (IP, домен и т.д.) вместо дублирования в «Действия», если это основной сценарий.
- Пустое состояние — через
emptyStateв DataTable или свой блок с призывом к действию (импорт, добавление).
Доступность
- У заголовков:
scope="col". - У таблицы:
role="grid"при семантической сетке данных. - Кнопки действий:
aria-labelи/или Tooltip.
Где таблица своя, а не DataTable
В IPRangesManager, DomainsNewManager, ServerManager и др. таблицы рендерятся вручную. Для единообразия:
- Те же классы:
table card-table table-vcenter table-nowrap mb-0, при желанииtable-striped. - Заголовки:
thсscope="col", короткий текст, при необходимости иконка и тултип. - Колонка действий: класс
td-actionsуthиtd, кнопки с тултипами.
При рефакторинге страниц можно постепенно переводить такие таблицы на DataTable с описанием columns и общих обработчиков.