Заметки из курса Марси Саттон на FrontEnd Masters: Доступность в JavaScript-приложениях и сайт Deque.
Я чувствую, что веб-доступность очень важна, и я хотел узнать больше о том, что означает a11y на практике. Вот некоторые вещи, которые я узнал…
Инструменты:
- Axe — автоматизировать а11й тестирование
- Волна — оценить доступность сайта
- NoCoffee — имитировать разные виды нарушений зрения
- Colour Contrast Analyser — индикаторы соответствия Web Content Accessibility Guideline (WCAG) 2.0
- Firefox Web Developer Toolbar — тесты на наличие барьеров доступности
- Браузер Zoom Page WE (chrome/ff) — как масштабируются страницы при увеличении
- NVDA — программа для чтения с экрана с открытым исходным кодом
- JAWS — системный скринридер, только windows
Основные вещи, которые нужно сделать/запомнить
- Используйте атрибуты Accessible Rich Internet Applications (ARIA), определяющие способы сделать контент более доступным.
- Используйте семантический HTML — заголовки, основную, навигацию, хедер, футер и т. д. Это дает возможность быстрее перемещаться по «типу».
Управление фокусом
- Взаимодействуйте с вашим сайтом только с помощью клавиатуры и убедитесь, что вы можете перейти к каждой ссылке/кнопке/вкладке/и т. д. (и можете щелкнуть мышью — бывают случаи, когда вы можете переходить в раздел, но не можете выйти из него).
- Проверьте индексы вкладок и видимые стили.
- кнопки == действия/ссылки == переход. Помня об этом, вы получаете некоторые преимущества доступности по умолчанию.
Маршрутизация на стороне клиента
- Переместите фокус на цель ссылки. Не используйте по умолчанию верхнюю часть страницы, где пользователю приходится перемещаться по всей странице, чтобы перейти к новому содержимому.
- Используйте ссылки для перехода к предыдущей ссылке (или пункту меню). Это позволяет пользователю проверить раздел или страницу и быстро «вернуться», если это не то, что им нужно.
Объявления (когда использовать?)
- По сути, в любое время, когда кто-то может увеличить страницу и не увидеть обновления или оповещения (асинхронное сохранение, фильтрация списка, виджет чата).