如何仅从屏幕阅读器隐藏任何元素,而不是从普通用户的页面隐藏?

Jit*_*yas 8 css xhtml accessibility screen-readers

如何仅从屏幕阅读器隐藏任何元素,而不是从普通用户的页面隐藏?

我知道这些片段,但我想隐藏屏幕重做的东西,但不是从视觉上的页面隐藏.Sscreen阅读器应该跳过隐藏的部分.

/* Hide for both screenreaders and browsers
      css-discuss.incutio.com/wiki/Screenreader_Visibility */
    .hidden { display: none; visibility: hidden; }

/* Hide only visually, but have it available for screenreaders
    www.webaim.org/techniques/css/invisiblecontent/ ; &  j.mp/visuallyhidden ; */
   .visuallyhidden { position: absolute !important;   
    clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
    clip: rect(1px, 1px, 1px, 1px); }

/* Hide visually and from screenreaders, but maintain layout */
   .invisible { visibility: hidden; }
Run Code Online (Sandbox Code Playgroud)

Dav*_*all 6

在元素上使用:

aria-hidden="true"
Run Code Online (Sandbox Code Playgroud)

这会将该元素显示为视力正常的用户,但不会被屏幕阅读器朗读.


Mic*_*yen 0

我不确定屏幕阅读器是否会遵守新的 CSS3 语音模块中的任何内容,但您可能可以测试一下,因为如果它有效的话,它似乎是最简单的选择。

http://www.w3.org/TR/css3-speech/