Что такое доступность в HTML

Ответ

Доступность (a11y) в HTML — это практика создания веб-контента, который могут использовать люди с ограниченными возможностями. Основные принципы:

  1. Семантическая разметка — использование правильных тегов (<header>, <nav>, <button> вместо <div>)
  2. Атрибуты ARIA — дополняют семантику (aria-label, role)
  3. Клавиатурная навигация — работа через Tab, Enter
  4. Контраст и размеры — читаемость текста
  5. Альтернативный контентalt для изображений

Пример:

<button aria-label="Закрыть меню" tabindex="0">
  <span aria-hidden="true">×</span>
</button>

Инструменты проверки: Lighthouse, axe DevTools.

Ответ 18+ 🔞

А, ну вот, опять про эту вашу «доступность»! Слушай, как будто мы тут для космонавтов сайты делаем, а не для нормальных людей. Но ладно, раз уж начали, сейчас я тебе на пальцах, только без мата… э, почти. Так, смотри. Есть такие ребята, которым наш сайт глазами не посмотреть, мышкой не тыкнуть. Им либо скринридер орет в уши, что там на странице, либо они по клаве шастают, как по минному полю. И наша задача — не накосячить так, чтобы они нас мысленно послали на три весёлых буквы. Первое и главное — **семантика, мать её**. Это не просто красивое слово. Это когда ты кнопку делаешь тегом ` ``` Во втором случае и скринридер поймёт, и с клавиатуры нажать можно, и семантика на месте. А проверить всю эту благодать можно тулзами: Lighthouse в хроме или axe DevTools. Они тебе тычут мордой в косяки, как в лужу. Не игнорируй, а то потом придётся переделывать, когда уже всех пользователей достал. Короче, доступность — это не для галочки. Это чтобы твой сайт мог использовать вообще любой, а не только тот, у кого руки из нужного места растут и глаза как у орла. Делай нормально — и тебя не забудут, а главное — не пошлют.