我对辅助功能类型还不太熟悉。关于何时使用
我需要在一个
aria-errormessage
和何时使用aria-alert
存在一些困惑。我需要在一个
aria-live
区域中显示其中之一。我应该使用哪个,为什么?aria-errormessage
和何时使用aria-alert
存在一些困惑。aria-live
区域中显示其中之一。我应该使用哪个,为什么?aria-errormessage
是ARIA 1.1中的新功能。 aria-errormessage
的值是另一个对象(类似于aria-labelledby
和aria-describedby
)的ID,该对象包含您的错误文本。 这是将您的对象与其关联的错误“连接”的一种方式。 就是这样简单。
aria-live
用于在更改时进行公告,并且当然可以在错误条件下使用,但也用于在更改页面上的文本并希望宣布文本更改时使用,例如如果您有计时器或股票行情或状态指示器(例如wifi连接丢失)。
role="alert"
是设置 aria-live="assertive"
和 "aria-atomic="true"
的 "快捷方式"。它会先宣布单词 "alert",然后读出您的文本更改。错误消息不一定是警报。如果我有一个需要特定格式的输入字段,而我犯了一个错误,应该宣布错误,但不必非得是警报。它可以是简单的 aria-live="polite"
。
请注意,如果您使用警报(即 assertive 的 aria-live),并且您有几个警报角色,则某些警报可能会清除其他警报的队列,因此您只会听到其中一个。
https://www.w3.org/TR/wai-aria-1.1/#aria-live
当发生assertive变化时,用户代理或辅助技术可能选择清除已排队的更改。(例如,在assertive区域中的更改可能会删除所有当前排队的更改)
<iframe>
可以使用title
属性本身拥有标签。当你通过接口按 tab 键时,iframe 的内容将像任何其他对象一样被读取。如果你有其他无障碍问题,最好首先使用[accessibility]
标签搜索 stackoverflow(就像你标记了你的问题),如果没有找到,再发布你的问题。其他人可能也对这个问题和答案感兴趣。否则,我是一名高级无障碍专家,可以承包工作,可供雇用。在你的 stackoverflow 个人资料中添加联系信息,我会与你联系。 - slugolicious