如何让屏幕阅读器正确发音C#

4

在我的网站上,我提到了编程语言C#。屏幕阅读器会将其读作“C 数字”。

是否值得尝试强制屏幕阅读器发音为“C sharp”?

如果是,我尝试过<span aria-label="C sharp">C#</span>,但是<span>会中断屏幕阅读器的流程...即使当我悬停在'C#'文本上时,仍然会发音为“C 数字”。

有什么建议吗?


1
也许您可以尝试类似的操作使用自定义css使元素仅对屏幕阅读器可见,然后再添加<span class="sr-only">C sharp</span><span aria-hidden="true">C#</span> - Alon Eitan
2个回答

3
我会用abbr标签将其包裹,并将C Sharp作为title属性提供。您正在给您的标记添加语义意义,这可以被辅助技术使用。不值得尝试强制屏幕阅读器正确读取它,因为您可能会使事情变得混乱,大多数用户都会根据自己的偏好设置屏幕阅读器来读取缩写。
<abbr title="C Sharp">C#</abbr>

0
对于我来说,我添加了一个额外的 span 来隐藏真正的 C#,并且在包装元素中使用 aria-label="C sharp"。这对我很有效。
<span aria-label="C sharp">
  <span aria-hidden="true">C#</span>
</span>

在非语义元素(如<span>)上使用aria-label将被屏幕阅读器忽略。请参见https://www.w3.org/TR/using-aria/#label-support。 - slugolicious
@slugolicious 谢谢你的提醒。我会再次检查一下。在使用 nvda 时,它对我有效。 - xianshenglu
我会遵循我在之前评论中发布的官方规范建议,无论您是否找到允许它的屏幕阅读器。 - slugolicious

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接