是什么原因导致 VoiceOver 宣布空组?

cus*_*der 6 accessibility voiceover wai-aria

我们有以下(简化的)HTML:(
真正的 HTML 稍微复杂一些,但listitem元素与下面的代码片段中所示完全相同。)

<div role="list">
  <div role="listitem">Foo</div>
  <div role="listitem">Bar</div>
  <div role="listitem">Baz</div>
</div>
Run Code Online (Sandbox Code Playgroud)

当用户向下浏览列表时,VoiceOver 会宣布:

在 macOS 10.14(莫哈韦沙漠)上:

Foo,组
Bar,组
Baz,组

在 macOS 10.15 (Catalina) 上:

Foo,空组
Bar,空组
Baz,空组

两个 macOS 上的 VoiceOver 配置似乎相同,那么为什么 VoiceOver 对于相同的标记会说不同的内容呢? (这个GitHub 问题似乎描述了类似的情况。)

小智 0

我也无法重现上述问题,但我在其中一个代码片段中注意到的一件事是:如果代码中有换行符,这也会导致 macOS 画外音宣布“空组”。我使用 aria-hidden="true" 修复了它。