如何确定屏幕阅读器读取的HTML元素的顺序?

问题描述:

是否有可能确定HTML元素的屏幕阅读器读出的顺序(像话语提示或配音),而不管它们在DOM位置的?我不知道是否有一个ID,如"voiceindex"(类似于tabindex)HTML属性或其它选项来控制序列。相应的网页作为webview嵌入到应用程序中。因此我无法访问原生Android或iOS代码。如何确定屏幕阅读器读取的HTML元素的顺序?

+1

我不认为这会回答你的问题。但是,屏幕阅读器通常使用HTML页面的结构来确定阅读顺序。用户还可以自定义订单,例如'阅读所有链接'。因此,就可访问性而言,您可以做的最好的事情就是设计一个结构合理的页面。您可以使用[HTML5 Outliner](https://gsnedders.html5.org/outliner/)来查看此结构。每个部分都应该有一个标题。在'div'之上优先使用像'nav','main'和'section'这样的标签。如果您的页面大纲有意义,屏幕阅读器将能够推断顺序。 –

没有,没有属性或任何像你描述的控制网页的阅读顺序。 这样的东西存在于PDF中,这是一个大混乱;肯定这是一个非常糟糕的主意,使PDF可访问性相当复杂。作为元素出现在DOM,这总是那么,无论你的CSS的

一个网页被读取以相同的顺序。 与手动指定订单相比,它具有很大的优势:这很简单,您只需使用适当的结构元素来构建网页;然后,为了验证它对于屏幕阅读器用户是否合理,只需从上到下阅读您的HTML代码,并完全忽略视觉放置。 这个后来的练习被广泛称为线性化;这basicly什么屏幕阅读器和屏幕阅读器用户如何看待网页

如果演习不convaincing不够,假设您已经录制页面在音频CD上。您可以一个接一个地听每个标题,或直接跳到曲目的开头,但不容易直接跳到歌曲的中间。 跳到曲目的开头是跳转到下一个标题或屏幕阅读器下一节的隐喻。屏幕阅读器也可以从曲目列表中选择曲目,因为它们大多数都提供要跳转到的节或列表的列表。

希望与这个形象将有助于你在网页以及屏幕阅读器的用户,以及为什么你应该仔细考虑一下。事实上,当你发布你的问题时,这确实是你的基本问题。