如何让Voice0ver正确阅读日期

时间:2016-09-26 07:01:48

标签: html accessibility wai-aria voiceover

  

注意:在Mac上使用带有VoiceOver的Chrome

如果日期是“2016年9月16日”,VoiceOver会读到的是“九月一六六二零一六”。有没有办法让它正确读作“九月十六日二十六”。 code pen link

<div tabindex="0" aria-label="September 16th 2016">16</div>

一种解决方案可以将aria-label属性更改为“九月十六二千十六”文本,但是有没有可以正确读取它的库?

3 个答案:

答案 0 :(得分:2)

我建议你不要试图改变行为。

您假设VoiceOver用户会对此感到困惑。 VoiceOver用户更有可能在他们访问的所有其他网站上熟悉这个,并宣布这样的日期。

如果有的话,考虑摆脱序数指标(&#34; th,&#34;&#34; rd,&#34;&#34; nd,&#34;等)。也许允许它以可视方式显示,但使用aria-hidden将其隐藏在屏幕阅读器中。

此外,VoiceOver用户通常不使用Chrome,他们使用Safari。

我还建议您找一些VoiceOver用户并获得他们的反馈。

答案 1 :(得分:1)

SR没有图书馆,为了符合你的要求,你应该是语义的,你看到的是SR宣布的内容,你可以使用带有全文的咏叹调标签&#34;九月十六日二十六和十六#34;并且完全正确的A11Y标准。 Tabindex不是a11y的最佳实践。

答案 2 :(得分:0)

使用aria-label并按照您希望的方式书写,或者,请注意这是VoiceOver(VO)首选项(设置)。

例如。如果你想要你的&#34; 2016年9月16日&#34;按预期阅读,然后执行以下操作。

  1. 启动VoiceOver
  2. 按住VO+V(控制+选项+ V)
  3. 这为您提供了详细转子。按向右箭头浏览面板,直至到达&#34;数字&#34;
  4. 将其更改为&#34;单词&#34;
  5. 现在尝试再次阅读您的文字。它应该按预期阅读。

    有时,它是屏幕阅读器的偏好。