首页 文章

如何防止Windows讲述人阅读隐藏的HTML标签?

提问于
浏览
1

我有一个HTML页面,其中包含多个隐藏元素,这些元素仅在某些情况下才可见 .

当我将焦点设置在页面包装器上(以读取所有内容)时,Windows讲述人会读取所有元素,甚至是隐藏的元素 .

我试过使用aria-hidden =“true”,CSS显示:无,HTML5隐藏属性,都被完全忽略 . 到目前为止,我发现唯一有效的机制是在将焦点设置在包装器上之前从DOM中删除这些元素 . 但它不是一个理想的解决方案 .

3 回答

  • 0

    role="presentation" tabindex="-1" 应用于已应用 aria-hidden 的元素 .

  • 0

    只是用同样的东西战斗,并发现如果有一个没有明确 aria-label / aria-labelledby 定义的 role="main" 的元素,它的整个内容,包括所有隐藏的元素,都被添加到MSAA和UIA树中,然后由讲述人读出 . 添加显式的aria属性可以解决问题 - 但显然也会阻止Narrator自动开始读取主要内容 .

    好消息是AccChecker警告这些问题 . 显然更好地遵循它的建议,即使自动阅读内容会很好 .

  • 0

    显然这不再是MS Edge的问题了!欢呼!如果使用CSS display:none隐藏元素,则它不会读取它的内容 .

相关问题