html – ARIA角色是否由后代继承?

html – ARIA角色是否由后代继承?,第1张

概述在下面的标记中,我有一个围绕< main>的包装器.表示目的的要素. <div id="main-wrapper" role="presentation"> <main id="main" role="main"> <h1>Title</h1> <p>Lorem ipsum, dolor sit amet.</p> </main></div> 但是我不确定ARIA rol 在下面的标记中,我有一个围绕< main>的包装器.表示目的的要素.

<div ID="main-wrapper" role="presentation">  <main ID="main" role="main">    <h1>Title</h1>    <p>Lorem ipsum,dolor sit amet.</p>  </main></div>

但是我不确定ARIA roles是否由后代继承.如果< main>那将是一个问题.元素被视为表示元素,因为它周围的包装器具有role =“presentation”.

这里是否正确使用了ARIA角色? ARIA角色是如何继承的?

解决方法 它可能取决于上下文和角色.规格和示例:
http://www.w3.org/TR/wai-aria/roles#presentation给出了每个角色的“继承状态和属性”列表以及role =“presentation”的好例子.

对于您的情况,具有role =“presentation”的包装元素将删除其所有后代元素的隐式本机语义. role =“main”覆盖“presentation”恢复< main>语义.但这也意味着你必须覆盖< main>中的语义元素.具有各自的ARIA角色,在< main>的背景下将变得非常复杂.

但最重要的是,role =“presentation”仅适用于具有隐含角色的元素. <跨度>或者< div>没有隐藏角色,如编辑草案中的解释所示:

The presentation role is used on an element that has implicit native
semantics,meaning that there is a default accessibility API role for
the element

<!-- 3. This role declaration is redundant. --><span role="presentation"> Sample Content </span>

基本上从不将role =“presentation”应用于没有隐式本机语义的元素,除非专门用作包装器来删除其后代的隐式本机语义.

总结

以上是内存溢出为你收集整理的html – ARIA角色是否由后代继承?全部内容,希望文章能够帮你解决html – ARIA角色是否由后代继承?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1060633.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存