我正在与jQuery移动“多页”文档的网站上工作,其中可能有几个“页面”的网站,这是编码为一个单独的html文档的div。下面是基本结构:
<body>
<div data-role="page" id="page1">
<header>Page 1</header>
<main>Content...</main>
<footer>...</footer>
</div>
<div data-role="page" id="page2">
<header>Page 2</header>
<main>Content...</main>
<footer>...</footer>
</div>
</body>
我想使用如下所示的html5 <main>
元素,但是w3c验证器给出一个错误,提示我“一个文档不能包含多个主元素”。
我知道w3c标准只允许每个文档有一个<main>
。然而,role="main"
( <main>
所映射到的)的aria标准确实允许“多个主要元素作为DOM后代,假设每个主要元素都与不同的文档节点相关联”(https://www.w3.org/TR/wai-aria/roles#main)。
这些jQuery Mobile算不算“不同的文档节点”?如果一次只向最终用户公开一个<main>
元素,我可以有多个吗?
(请注意,不活动的jQuery移动网页位于文档<body>
中,但使用display:"none"
隐藏。)
发布于 2016-10-21 05:23:59
main
标记的主要目的是帮助屏幕阅读器和其他辅助技术了解主要内容从哪里开始。
根据W3C标准,它在每个文档中只能使用一次。如果您尝试为每个文档使用多个main
标记,w3c验证器将抛出错误。另一件需要注意的事情是,您不能将它用作文章、旁白、页脚、页眉或导航元素的派生元素。
文档或应用程序主体的主要内容。主内容区域由与文档的中心主题或应用程序的中心功能直接相关或扩展的内容组成。
main
不是一个章节内容,它不会像文章、章节或导航那样影响文档的轮廓。
但根据HTML5 Living Standards的说法:
对文档中主要元素的数量没有限制。事实上,在许多情况下,拥有多个主要元素是有意义的。例如,具有多个文章元素的页面可能需要指示每个此类元素的主要内容。
我认为这归结于SEO。如果你不想你的搜索引擎优化受到影响,那么我认为你应该避免使用多个main
标签,而是在你的html中使用arai-*
角色标签。
https://stackoverflow.com/questions/40141361
复制相似问题