Скрыть текст ТОЛЬКО для программ чтения с экрана

Я просто не могу получить ответ на этот вопрос. WCAG говорит, что это можно сделать с помощью тега aria-hidden, но я читал, что он не работает во многих программах чтения с экрана.

Не понимаю, как display:none может помочь скрыть некоторый текст только для программ чтения с экрана (= видимых для других устройств, кроме SR). Также неясно, как программа чтения с экрана будет действовать для display:none, если она не поддерживает css.

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


person jiostoph    schedule 23.01.2016    source источник
comment
почему это должно быть «невидимым»? ... тег img с пустым атрибутом alt делает это.   -  person G-Cyrillus    schedule 23.01.2016
comment
Почему? разве ты не можешь думать о такой ситуации? Подумайте на мгновение, что пользователи с SR используют устройство, чтобы текст был удобочитаемым для голосовых машин. Попытайтесь прочитать какие-нибудь символы, http-адрес и т. Д., Идея пришла?   -  person jiostoph    schedule 23.01.2016
comment
мой вопрос был больше похож на то, как вы сбежали в этой ситуации? speak:none; или voice-volume:silent; не действуют? w3.org/TR/css3-speech   -  person G-Cyrillus    schedule 23.01.2016
comment
OP также спросил об этом у веб-мастеров.   -  person unor    schedule 24.01.2016


Ответы (3)


aria-hidden следует использовать, чтобы скрыть от программ чтения с экрана любое не фокусируемое на фокусе содержимое страницы. Все основные текущие версии программ чтения с экрана хорошо это поддерживают.

Чтобы удовлетворить требования WCAG 2 AA, функция должна поддерживаться только на обычная или хотя бы одна широко распространенная бесплатная вспомогательная технология. NVDA и Firefox в Windows, VoiceOver в OS X и iOS и Talkback в Firefox на Android поддерживают эту функцию.

person unobf    schedule 24.01.2016

К сожалению, лучше всего использовать атрибут aria-hidden. Пользователи программ чтения с экрана, игнорирующих атрибуты ARIA, должны изменить свое программное обеспечение.

person Adam    schedule 23.01.2016

Вы также можете использовать role="presentation", в зависимости от тега, браузера и программы чтения с экрана это может быть лучшим вариантом (или хуже). Взгляните на этот хороший учебник,

Специальные возможности HTML5: aria-hidden и role = "presentation"

person Iñaki Quesada    schedule 11.02.2016