如何处理屏幕阅读器的版本号



我使用的是Windows"讲述人",像2.3.96这样的版本号作为日期"1996年3月2日"。如何处理屏幕阅读器的版本号?我看到一些建议使用标签并拼写出点的答案,比如:aria-label="2 dot 3 dot 96"。有更好的方法吗?

在stackoverflow和其他地方已经有几个类似的问题,关于数字和其他没有像页面作者所期望的那样发音的东西。同样的答案也适用于被解释为日期的版本号:你最好什么都不做,写出来没有任何特别的东西。

问题是数字的发音取决于许多层:

  • 浏览器及其公开辅助功能树的方法
  • 操作系统、屏幕阅读器及其设置。例如,Jaws提供了许多选项,可以改变数字和日期的解释和说出方式
  • 使用的声音。相同的屏幕阅读器,在相同的操作系统上,使用相同的浏览器,但使用不同的声音,确实可以以非常不同的方式阅读相同的文本

你可以尝试几种方法,比如在不同的<span>中分离,添加或删除空格,通过咏叹调标签写"点",等等。

然而,通过这样做,你很可能会改善一些用户的发音,而降低大多数其他用户的发音。操作系统、浏览器、屏幕阅读器和语音的组合太大,无法测试所有内容。

所以最好是保持务实,不要做任何特别的事情。保持你的版本号写下来,就像通常在任何地方都会做的那样。屏幕阅读器用户通常习惯于这种发音怪癖,如有必要,可以调整选项并设置词典。

简短回答

使用<p aria-label="Version 2 point 3 point 96">Version 2.3.96</p>,这将在大多数流行的屏幕阅读器中得到正确的解析。确保没有<spans>从文本中分割版本号,使用aria-label作为过度杀伤/a备份。

答案很长

通常我会建议永远不要干扰屏幕阅读器发音的方式,就像@QuentinC建议的那样。

然而,在这种情况下,我想说,您确实想尝试解决这个问题,因为听到应该有版本号的日期可能会非常令人困惑(这是软件编写的日期吗,还是公司成立的日期?谁知道呢!(。

这是屏幕阅读器中的一个解析问题,与大多数人不喜欢阅读方式的问题非常不同,请只遵循下面的建议。

修复一个,更改标记

您没有添加标记,但下面的解释是基于我的测试。

这个问题实际上可以通过在版本号之前添加"Version"来自行解决(至少在我测试的JAW、NVDA和VoiceOver中是这样(。

我的猜测是你有一个类似于以下格式的版本号:

CCD_ 6或CCD_。

通过删除第一个示例中的<span>,JAWS、NVDA和VoiceOver在我的测试中正确读取了以下内容:

<p>Version 2.3.96</p>

一旦在版本号周围添加了<span>,数字的上下文就会丢失(<span>元素中的文本会自行评估(,因此屏幕阅读器会尝试在没有任何上下文的情况下自行解析它,并决定它是一个日期。

当然,使用aria-label可以修复它吗

此外,aria-label可能不适用于没有role的静态元素(<div><span>等(,这表明它们是活动元素,所以它很可能无论如何都不适用于您。

出于这个原因,我不建议尝试单独使用aria-label来解决这个问题,但为考虑到它的屏幕阅读器添加它是一个无害的步骤。

这是我唯一一次建议干扰屏幕阅读器的说话方式,请不要将此作为解决其他发音问题的步骤,因为这是一个解析问题,而不是发音问题

考虑到这一点,我建议您使用以下方法:

<span aria-label="Version 2 point 4 point 99">Version 2.4.99</span>

<span><p>或其他内容块围绕。

相关内容

  • 没有找到相关文章

最新更新