【问题标题】:Can I use more than one "main" html tag in the same page?我可以在同一页面中使用多个“主要”html 标记吗?
【发布时间】:2016-01-20 09:43:00
【问题描述】:

例如,如果我想将 h1 放在左列,将内容放在右列:

<div class="left-column">
 <main>
  <h1>Document Title</h1>
 </main>
</div>
<div class="right-column">
 <main>
  <p>Text content<p>
 </main>
</div>

正确吗?谢谢!

【问题讨论】:

标签: html semantics


【解决方案1】:

简短的回答是肯定的,你可以。但是,W3C spec 禁止它,而 WHATWG spec 允许它。由于main 元素的作者编写了 W3C 版本并且与 WHATWG 的解释不一致,我会推迟到那里。还有一个开放的错误是让 WHATWG 规范与 W3C 规范保持一致。

但是,您不应该充分利用 main 来支持辅助技术 (AT)(例如屏幕阅读器)。它也映射到main的ARIA角色,所以它有一个直接的映射期望。

AT 用户可以快速导航到代表页面主要内容的main 元素。如果您使用多个,那么这些用户可能永远不会看到它,因为他们不希望有多个主要内容块(WHATWG 错误报告证实了这一点,正如 AT 用户所述)。

HTML 验证器也会抛出一个错误,这可能是问题,也可能不是问题。

在大多数情况下,多个article 元素可以嵌套在main 中,以实现样式挂钩所需的效果。

我没有足够的代表点来发布超过 2 个链接,否则我会提供更多材料。

【讨论】:

    【解决方案2】:

    我认为不会 - 文档中的 &lt;main&gt; 元素不得超过一个。 &lt;main&gt; 元素不能是 &lt;article&gt;&lt;aside&gt;&lt;footer&gt;&lt;header&gt;&lt;nav&gt; 元素的后代。

    【讨论】:

      【解决方案3】:

      每页只能使用一次。在此处查看此链接

      http://html5doctor.com/the-main-element/

      有关原因的更多信息。看看这个

      http://lists.w3.org/Archives/Public/public-html/2013Jan/0230.html

      【讨论】:

        【解决方案4】:

        这是对齐方式

        <div class="left-column">
         <main>
          <h1 align="left">Document Title</h1>
         </main>
        </div>
        <div class="right-column">
         <main>
          <p align="right">Text content<p>
         </main>
        </div>

        【讨论】:

          猜你喜欢
          • 2011-07-29
          • 2010-12-06
          • 1970-01-01
          • 2010-10-04
          • 1970-01-01
          • 2017-06-19
          • 2022-11-26
          • 1970-01-01
          相关资源
          最近更新 更多