为什么在标签上使用相对定位会使得屏幕阅读器VoiceOver无法读取标签内容?

3

当您在表单中的标签上明确设置了position:relative时,VoiceOver不会朗读标签文本。我只在Chrome和VoiceOver上测试过,所以我不知道其他屏幕阅读器/浏览器组合是否会出现这种情况。可能只是一个奇怪的错误,因为屏幕阅读器似乎不关心定位样式。

<form>
        <fieldset>
            <legend>Label Position Quirk</legend>
            <input id="thing1" type="checkbox">
            <label for="thing1" style="position:relative">This won't be read</label>
            <input id="thing2" type="checkbox">
            <label for="thing2">This will be read</label>
        </fieldset>
    </form>

1个回答

3
这是一个涉及VoiceOver和Chrome的Bug。由于Safari与此屏幕阅读器/浏览器组合的开发和测试较为充分,因此VoiceOver用户主要使用Safari作为其首选浏览器。Chrome在屏幕阅读器方面存在许多问题,尤其是对于未为其编写的屏幕阅读器(如VoiceOver/Safari和NVDA/Firefox),我亲自测试了这个例子,使用VoiceOver和Safari可以朗读标签,但使用Chrome则不行,因为存在这些问题。
为了了解哪些浏览器/屏幕阅读器组合被广泛使用,WebAIM定期提供一些非常有用的调查结果来跟踪这些趋势: http://webaim.org/projects/screenreadersurvey6/

1
哦,Chrome,你永远不会停止惊奇。 - BoltClock

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