如何阻止Windows讲述人读取隐藏的HTML标签?(How to prevent Windows

2019-10-18 09:44发布

我有一个HTML页面,有多个隐藏要素,只有在某些情况下变得可见。

当我将焦点设置在页面包装(阅读全部内容)时,Windows讲述读取所有的元素,甚至是隐藏的。

我一直在使用ARIA隐藏=“真”,CSS显示尝试:没有,HTML5隐藏属性,所有被完全忽略。 到目前为止,我发现唯一可行的机制是从DOM中删除这个元素,将焦点设置在包装之前。 但它不是一个理想的解决方案。

Answer 1:

适用role="presentation" tabindex="-1"到元素有aria-hidden应用。



Answer 2:

只是同样的事情战斗,并发现是否有与元素role="main"没有明确的aria-label / aria-labelledby定义,它的全部内容,包括所有的隐藏要素,添加到MSAA和UIA树,然后由讲述人读出。 添加一个明确的咏叹调特性解决了这个问题 - 但显然也从开始到自动读取主要内容停止旁白。

好事是, AccChecker警告这些问题。 显然,更好地遵循它,即使它会是不错的内容自动读取建议。



Answer 3:

显然,这不是一个问题了关于MS的边缘! 欢呼! 如果元素是隐藏与CSS显示:无那么它不看它的内容。



文章来源: How to prevent Windows Narrator from reading hidden HTML tags?