«Элементы не должны иметь tabindex больше нуля» - проверка ненулевых разрывов Tabindex и соответствие 508 - PullRequest
0 голосов
/ 10 декабря 2018

Мы используем инструмент под названием Ax , чтобы проверить правильность и соответствие 508 HTML-страниц.

Эта ошибка возникает как нарушение:

Элементы не должны иметь tabindex больше нуля

Приложение структурировано с верхними ссылками и панелью навигации.Если мы не добавим tabindex, табуляция начинается с этих элементов.Идея состоит в том, чтобы поразить входные данные формы непосредственно при переходе на страницу.Конечно, это имеет смысл и должно быть разрешено (даже для пользователей с ограниченными возможностями)?Тогда почему законный вариант использования помечается?

image of the form layout

<input id="phone" name="phone" tabindex="5" placeholder="" class="input-block-level" type="text" value="222">

imageof the error message

Ответы [ 2 ]

0 голосов
/ 10 декабря 2018

Для зрячих пользователей приятно сосредоточиться на первом действующем элементе, таком как поле поиска на amazon.com (хотя они этого не делают).Но зрячие пользователи могут быстро взглянуть на всю страницу.Они могут видеть, где находится фокус (при условии, что у вас есть индикатор фокусировки, 2.4.7 ) по отношению к остальной части страницы, и сразу узнают, что есть элементы навигации до местоположения фокуса, и больше материала для взаимодействия спосле местоположения фокуса.

Для пользователей со слабым зрением, которые используют лупу, их область просмотра будет смещена, чтобы включить элемент, который имеет фокус.Обычно при загрузке страницы фокус переходит на первый элемент в DOM, который может получить фокус.Обычно это «домашний» логотип в левом верхнем углу (для LTR языков ).Поскольку область просмотра находится в верхнем левом углу, пользователь со слабым зрением будет знать, что он может перетащить свою область просмотра вправо или вниз, чтобы изучить большую часть страницы.Но если первоначальный фокус находится где-то посередине страницы, это может дезориентировать.Пользователь может не знать , где на странице, где он находится.Как далеко от верхнего левого угла сместилось окно просмотра?Как далеко они могут исследовать вверх или вниз, влево или вправо?

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

или или .Вы можете перемещаться к заголовкам с помощью клавиши «H», к таблицам с помощью клавиши «T» и к спискам с помощью клавиши «L».Но опять же, пользователи программы чтения с экрана будут ожидать, что начальный фокус будет в верхнем левом углу.Они, безусловно, могут ориентироваться и выяснять, где они находятся на странице, но для этого требуется некоторое познавательное усилие, похожее на экранной лупы пользователя. Итак, как вам сделать приятный опыт для всех этих типов пользователей?(среди многих других типов пользователей тоже)? Как отмечается в одном ответе, " пропуск ссылок " очень удобен.В терминах доступности они называются « обходными блоками » (2.4.1).Они позволяют фокусу по умолчанию находиться в верхнем левом углу (или там, где идет фокус по умолчанию), и когда вы tab , фокус перемещается к «пропустить ссылку», которая является ссылкой на странице, которая позволяет вамперейти к основной части страницы.Это отлично подходит для пользователей, использующих только клавиатуру (которые могут быть зрячими или слабовидящими), пользователей лупы и читателей экрана. Однако, если вы действительно хотите, чтобы фокус был на определенном элементе,если элемент является элементом или autofocus.Для других изначально фокусируемых элементов, таких как , у вас может быть javascript, который запускается при загрузке для вызова focus () для элемента.

Это не нарушение WCAG, чтобы иметь первоначальный фокус где-то на страницекроме первого элемента, так что вы можете поместить его в форму, просто сделайте это таким образом, чтобы уменьшить путаницу для пользователей, которые имеют ограниченное зрение или не могут использовать мышь.

Для получения дополнительной информации о tabindex см. «

5.5 Навигация по клавиатуре между компонентами (последовательность вкладок) ».Обратите внимание, что для значений tabindex больше 0, он говорит: «Авторам настоятельно рекомендуется НЕ использовать эти значения.»

0 голосов
/ 10 декабря 2018

Несмотря на то, что говорит AX, в HTML допускается наличие табельного индекса больше нуля.

Однако способ, которым вы используете tabindex, представляет информацию для зрячих пользователей, которая по сути становится недоступной для незрячих пользователей, поскольку они не могут вкладываться в нее.

ЛучшеДля этого можно использовать скрытые « пропустить ссылки ».

Идея достаточно проста: предоставьте ссылку вверху страницы, которая приведет пользователя внизякорь или цель в начале основного контента.

https://webaim.org/techniques/skipnav/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...