gpt4 book ai didi

banner - h1 上允许角色 ="banner"吗?

转载 作者:行者123 更新时间:2023-12-04 05:24:10 25 4
gpt4 key购买 nike

以下标记从验证器收到错误:

<!DOCTYPE html>
<html lang="en">
<head>
<title>Bla Bla Bla</title>
</head>
<body>

<h1 role="banner">Bla Bla Bla</h1>

<section role="main">
<h1>Bla Bla Bla</h1>
<p>Bla Bla Bla</p>
</section>

<p role="contentinfo"><small>Bla Bla Bla</small></p>

</body>
</html>

错误是:错误:此时元素 h1 上不允许使用属性角色。

这是否意味着 role="banner"必须在 header元素?

最佳答案

可以将 ARIA 角色分配给任何 HTML 元素。来自 the WAI-ARIA docs :

3.2.7.1 ARIA Role Attribute

Every HTML element may have an ARIA role attribute specified.



但是,对于某些元素可以作为角色的内容存在各种限制,主要是为了防止隐式语义使您与显式语义陷入困惑状态。
如果您查看上面链接的 W3C HTML5 规范中的表格,您会在“隐式 ARIA 语义”下看到 h1没有 hgroup祖先必须具有以下任一角色 headingtab ,如果设置。
这就是您收到验证错误的原因。
您还将从这些表中看到 head具有很强的原生语义 no role ,这意味着您也不能设置它 - 它必须设置为 presentation .我不确定这是否是您的意思,因为您没有 header样本中的元素。
如果您确实有 header element 然后是的,您可以将其角色设置为 banner - 事实上,这就是你被允许设置的所有内容(如果你设置了它)。我上面链接的那些表格也涵盖了这一点。
你也可以尝试把 h1里面 sectionbanner角色 - 那将是我第一次尝试解决这个问题。

关于banner - h1 上允许角色 ="banner"吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13393578/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com