我可以使用<nav>标签进行分页吗?

Ren*_*mes 4 html5 pagination semantic-markup

<nav>在主菜单导航中看到标签的用法是很常见的,但是我不知道可以在哪里使用它的其他示例。例如,对于分页:

<div class='my-pagination'>
   <!-- first, 2, 3, 4 ... 8, 9, last -->
</div>
Run Code Online (Sandbox Code Playgroud)

可:

<nav class='my-pagination'>
  <!-- first, 2, 3, 4 ... 8, 9, last -->
</nav>
Run Code Online (Sandbox Code Playgroud)

是语义吗?

uno*_*nor 5

是。

HTML5规范定义了如下nav元素

nav元素代表一个页面的部分,其链接到其他网页或页面内部分:带有导航链接的部分。

分页显然由“到其他页面的链接”组成,这些是“导航链接”。在大多数情况下,为此使用分段内容元素是有意义的。


确保将放在nav正确的父部分中:

  • 如果是多页文章,nav则应为的子级article

    <article>
      <h1>Review of my new camera</h1>
      <p>…</p>
      <nav><!-- pagination for this article --></nav>
    </article>
    
    Run Code Online (Sandbox Code Playgroud)
  • 如果是多页的文章预告片,则nav应当是包含此列表的部分的子级。

    <section>
      <h1>All blog posts</h1>
      <article><h1>Review of my new camera</h1></article>
      <article><h1>I want to buy a camera, any suggestions?</h1></article>
      <nav><!-- pagination for this blog posts list --></nav>
    </section>
    
    Run Code Online (Sandbox Code Playgroud)
  • 如果每页一篇完整的文章,则nav应该是节body根的子级。

    <body>
      <article><h1>Review of my new camera</h1></article>
      <nav><!-- pagination for next/previous article --></nav>
    </body>
    
    Run Code Online (Sandbox Code Playgroud)