# Table: Доступность

## Подписи

Используйте понятные подписи столбцов в `TableHead`, когда у данных есть осмысленные столбцы. Если таблице нужны заголовок или описание, разместите их в окружающем интерфейсе.

## Поведение клавиатуры

- Нативной навигации по таблице обычно достаточно для данных только для чтения и с небольшой интерактивностью.
- Не рассчитывайте, что `Table` предоставляет навигацию по ячейкам в стиле grid.
- Интерактивные контролы внутри ячеек по-прежнему должны быть доступны с клавиатуры по отдельности.

## Поведение фокуса

- Самой таблице фокус обычно не нужен.
- Поведение фокуса определяется интерактивным содержимым внутри ячеек.
- Таблицы внутри оверлеев всё равно нужно проверять на переполнение и порядок чтения.

## Семантика для скринридеров

- Семантические секции, такие как `TableHead` и `TableBody`, помогают понять структуру.
- Используйте `TableHeading` для настоящих заголовков, а не стилизуйте ячейки данных под заголовки.
- Итоги в подвале размещайте в `TableFoot`, если они часть структуры таблицы.

## Семантика форм

- `Table` — компонент для отображения данных, а не поле формы.
- Если поля ввода размещены внутри ячеек, их семантика формы принадлежит самим полям, а не корню таблицы.

## Риски доступности

- Замена семантических заголовков стилизованным обычным текстом.
- Использование `Table` для взаимодействий в стиле grid, которым нужна более богатая поддержка клавиатуры.
- Горизонтальное переполнение, обрезающее столбцы без явной стратегии на стороне потребителя.
