TGViewer
Всё про доступность интерфейсов Всё про доступность интерфейсов @accessibilityofinterfaces · 7 subscribers
Post #153 4
Когда модальное окно видно, но для скринридера оно не окно

В IBM mcp-context-forge нашёлся хороший недельный кейс по доступности: большой epic по WCAG 2.1 AA уже открыт, но самая полезная точка входа — не «чинить всё», а поправить общие UI-хелперы, через которые повторяются одни и те же ошибки.

Что было проблемой: модалки в Admin UI открывались визуально, но общий helper не добавлял им роль dialog, не связывал окно с заголовком, не переводил фокус внутрь и не возвращал его обратно на кнопку открытия. Для клавиатуры и скринридера это легко превращается в ситуацию: интерфейс изменился, а пользователь не понимает, где он сейчас.

Вторая часть — ошибки в формах. Текст ошибки появлялся на экране, но поле не получало нормальную программную связь с этим текстом. Скринридер мог не прочитать, что именно не так и как это относится к текущему полю.

Что изменил в PR: общий modal-helper теперь выставляет dialog-семантику, aria-modal, подпись через заголовок, переводит фокус в окно и восстанавливает его после закрытия. Генерируемая copyable-modal тоже стала полноценным подписанным dialog. Валидация форм теперь ставит aria-invalid и связывает поле с текстом ошибки через aria-describedby; подсказки, которые уже были у поля, не затираются.

Это не «закрыли весь WCAG». Это нормальный маленький слой инфраструктуры: одна правка в общих помощниках улучшает сразу несколько будущих и существующих сценариев.

Кейс собран через Accessibility Auditor Skill.

Issue: IBM/mcp-context-forge #2274
PR: #5331
blinddev.xyz Accessibility Auditor Skill | Blind Dev — Денис Скрипник AI-agent workflow для быстрого первого слоя accessibility-аудита: сайты, мобильные и десктопные приложения, репозитории и backlog исправлений.
More from @accessibilityofinterfaces
  1. Sep 1, 2026Форма, которую заполняют в 3 ночи В issue PaedsMom описали проверку формы консультации: ей…
  2. Aug 31, 2026Видео без дорожки субтитров — это не «потом допишем текст». Свежий сигнал из GitHub: в про…
  3. Aug 31, 2026Видео без дорожки субтитров — это не «потом допишем текст». В SCORM-проекте edumints-scorm…
  4. Aug 30, 2026Свежий баг в Highcharts: график закрыли, а accessibility-таймеры продолжают работать. В is…
  5. Aug 30, 2026Highcharts: график закрыли, а accessibility-таймеры ещё говорят. Свежий баг про отложенные…
  6. Aug 29, 2026Reduced motion как настройка продукта В ProgressRPG завели issue про отдельный переключате…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →