是否每个 div、section、main 和 article 都需要一个角色属性 [重复]

Posted

技术标签:

【中文标题】是否每个 div、section、main 和 article 都需要一个角色属性 [重复]【英文标题】:Does every div, section, main, and article need to have a role attribute [duplicate] 【发布时间】:2017-12-20 01:55:45 【问题描述】:

是否每个 div、section、main 和 article 都需要具有可访问性的角色属性?只问是因为一位同事提到了这一点,现在我觉得我必须重做很多标记。例如,如果您使用 div 进行样式设置怎么办?

假设我的 html 看起来像:

<div role="Heading" aria-labelledby="website-heading">
    <h1>This is a heading</h1>
    <hr>
</div>

在这种情况下是否需要 role="Heading" ?

【问题讨论】:

我会说:不。 问题已经回答:***.com/questions/10403138/… @DCR 很好的发现。以后,您只需单击问题下方的标志链接,选择应该关闭,复制,然后将该链接粘贴到那里。谢谢! 【参考方案1】:
<div role="Heading" aria-labelledby="website-heading">
    <h1>This is a heading</h1>
    <hr>
</div>

heading 角色不仅没有必要而且不正确。

这意味着内部&lt;h1&gt; 有一个父标题,其中aria-level 不存在,因为h1 是标题中的第一个现有级别。

【讨论】:

【参考方案2】:

不,将角色属性添加到页面中的每个 div 或部分不是强制性的,也不是一个好的做法。如果您想记住不同部分或 div 的角色,那么您可以随时使用 html cmets ?

【讨论】:

以上是关于是否每个 div、section、main 和 article 都需要一个角色属性 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

孩子与其父母之间的边距顶部[重复]

section和div

Div vs Section:如何在 Nav 元素中对元素进行分组

div,section,article的区别和使用

<div> 和 <section> 之间的确切区别是啥?就像我知道 Section 有“意义”而 div 没有,但那是啥意思? [复制]

<header> 或 <section> 元素在机制上是不是与 <div> 不同? [复制]