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

## Подписи

- Окружающий интерфейс должен объяснять, что обозначают элементы, особенно в каруселях и онбординге.

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

| Клавиша | Действие |
| --- | --- |
| <kbd>→</kbd> / <kbd>←</kbd> | Активирует следующий или предыдущий элемент и переносит на него фокус. Останавливается на первом и последнем элементе. Клавиши не следуют направлению текста: → всегда ведёт к следующему индексу, в том числе в right-to-left. |
| <kbd>Tab</kbd> | Переносит фокус на активный элемент и затем за пределы контрола: элементы — одна остановка табуляции. |

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

- Каждый элемент — фокусируемый элемент управления наподобие кнопки с перемещаемым `tabIndex`.

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

- Корень использует `role='tablist'`.
- Элементы предоставляют семантику, подобную вкладкам, и активный выбор.
- Элементы прогресса в активном состоянии могут предоставлять семантику индикатора (meter).

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

- `PageControl` — это навигация, а не поле формы.

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

- нет контекстной подписи, объясняющей, что обозначают точки
- активный элемент показан только цветом
- индикаторы прогресса по таймеру меняются быстрее, чем пользователь успевает воспринять
