屏幕阅读器如何阅读<abbr>标签?

时间:2017-08-19 21:10:21

标签: html accessibility screen-readers abbr

我了解到<abbr>标记应该由屏幕阅读器解释,其title属性在屏幕阅读器读取时会替换其内容。但是,当我尝试这种方式时,MacOS(Firefox和Safari)Voiceover和NVDA(Windows 10,Edge和Firefox)都不会这样。这是相关的代码部分:

... bla bla bla <abbr title="nervus">N.</abbr> peronaeus ...

(这是医学表达)

IMO这应该被解读为“...... bla bla bla nervus peronaeus ...”,但它被读作“... bla bla bla N.”,然后长时间的沉默(或者屏幕阅读器甚至停止之前)它),显然是因为点,然后“peronaeus ......” - 没有“神经”......

我是否正确使用了语法或者是否存在我遗漏的内容?或者,如果这是正确的:是否有任何WAI-ARIA代码或类似代码,我可以添加它以使其在大多数屏幕阅读器上的工作方式工作?

3 个答案:

答案 0 :(得分:3)

您无法真正依赖于听到该元素的title属性的用户。 Here's a good resource on how screen readers process HTML elementsabbr,条目如下:

正如您所看到的,屏幕阅读器通常只是读出元素内容。由于N.包含句点,因此它只读出“N”,然后在此期间完全停止。您可以设置屏幕阅读器以阅读title内容,但这是一个选择加入设置,因此您不应该依赖它。实际上无法使用title为屏幕阅读器设置内容。

答案 1 :(得分:2)

abbr标记只是误导。

在您的情况下,您不希望仅向盲人用户提供信息,而是向忽视看似常见的医学缩写术语的人提供信息。非盲用户(不使用屏幕阅读器)需要此信息。

相反,使用盲文显示器的盲人确实喜欢缩写。很多。

如果您想要一种非常有效的方法来处理缩写,请使用词汇表:

 <a href="/glossary/nervus-peronaeus"
        aria-label="Nervus peronaeus"
        title="Nervus peronaeus" class="glossary">N. Peronaeus</a>

aria-label对链接有很好的支持,title属性可用于向非屏幕阅读器用户提供提示。

例如,词汇表可以插入页面底部。

 <a href="#nervus-peronaeus"
        aria-label="Nervus peronaeus"
        title="Nervus peronaeus" class="glossary">N. Peronaeus</a>

我处理缩写的首选方法是不使用它们。

Nervus Peronaeus

清除。简洁。这似乎是微不足道的,但当你认为缩写值得解释时,这对每个人来说都是最好的方式(运动,视觉,认知障碍)。

当然,对于缩写语言的一部分,您不需要解释它们(FBI,NATO,......)。在专业人士的医疗网站中,“N. peronaeus”一词可能是目标公众语言的一部分。

答案 2 :(得分:0)

另一种方法:在页面上的第一个实例上使用括号中的完整术语加缩写,然后只使用缩写。维基百科:&#34;超文本标记语言(HTML)是用于创建网页和Web应用程序的标准标记语言。&#34; https://en.wikipedia.org/wiki/HTML