如何覆盖屏幕阅读器对句子中单词的发音而不使其在句子中暂停?

2023-11-25

假设我有以下 HTML 句子:

<p>Please enter your licence number</p>

屏幕阅读器将“licence”一词误读为“liss-ens”(语音拼写)。它应该发音为“lice-ens”(语音拼写)。

我想通过向屏幕阅读器提供拼音拼写来解决此问题,同时使文本在视觉上看起来相同。

我可以用<span>s, aria-属性和样式如下:

<p>Please enter your <span aria-hidden="true">licence</span><span style="position: absolute; left: -10000em;">license</span> number</p>

这工作得很好,除了屏幕阅读器(我在 MacOS 上使用 VoiceOver 进行测试)在到达第一个跨度时暂停,迫使我按 [VO]+[右箭头] 前进到下一个单词:

“请输入您的”... [VO]+[右箭头] ...“lice-ens”...[VO]+[右箭头] ...“号码”

我希望屏幕阅读器能够流畅地读出句子而无需停顿。

这可能吗?或者我不应该试图控制这个?


Don't.

真的,不用担心。我知道这听起来很老套,但这是基于多年与屏幕阅读器用户合作(并尝试做您想做的事情)的真实建议。

大多数屏幕阅读器用户已经熟悉他们的工具如何朗读单词,以及与缩写、日期、时间等相关的怪癖。如果尝试覆盖它,您可能会面临让用户感到困惑的风险。

如果您与屏幕阅读器用户交谈,您可能会发现这是真的。这是一个非常常见的问题,以至于本周的 WebAIM 邮件列表中再次出现:http://webaim.org/discussion/mail_message?id=34398

请注意该线程中这条富有洞察力的评论:

事实上,有时如果你仔细听屏幕阅读器用户说话,你会发现我们会像屏幕阅读器一样发音——而我们甚至没有意识到这一点。

确实do not尝试重新调整用途<ruby>。一般来说,如果您不理解某个元素,那么就不要使用它,当然也不要将其用作黑客。这可能会给尝试自动翻译内容的人带来问题。

另外,如果您不准备,请不要使用 hack测试它all屏幕阅读器和平台组合(包括每个屏幕阅读器和浏览器配对的多个版本)。

最后,请记住关于1/3 的屏幕阅读器用户有视力,因此有时强制发音会扰乱他们在屏幕上看到的内容。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何覆盖屏幕阅读器对句子中单词的发音而不使其在句子中暂停? 的相关文章