更好的是:
<h1>Navigation</h1>
<nav>
<ul>
<li>...</li>
</ul>
</nav>
或者:
<nav>
<h1>Navigation</h1>
<ul>
<li>...</li>
</ul>
</nav>
有没有显着差异?
答案 0 :(得分:3)
nav
是一个切片元素,因此,如果您有一个描述导航的标题,它应该在里面:
<nav>
<h1>Navigation</h1>
<ul>
<li>...</li>
</ul>
</nav>
否则,标题将与不同的部分错误地关联,而不是nav
元素。
W3C HTML5 spec提供了一个几乎相同的例子:
代码示例:
在以下示例中,页面有几个存在链接的位置,但这些位置中只有一个被视为导航部分。
<body itemscope itemtype="http://schema.org/Blog"> <header> <h1>Wake up sheeple!</h1> <p><a href="news.html">News</a> - <a href="blog.html">Blog</a> - <a href="forums.html">Forums</a></p> <p>Last Modified: <span itemprop="dateModified">2009-04-01</span></p> <nav> <h1>Navigation</h1> <ul> <li><a href="articles.html">Index of all articles</a></li> <li><a href="today.html">Things sheeple need to wake up for today</a></li> <li><a href="successes.html">Sheeple we have managed to wake</a></li> </ul> </nav> </header> ... </body>
答案 1 :(得分:1)
如果您对可访问性感到疑惑take a look here.
最好在nav
内使用标题,因为它描述了该部分。
答案 2 :(得分:0)
将标题放在#reimbursement_grid
容器中可以让您更轻松地设置样式,并整体操作nav元素。例如,如果您移动了<nav>
,那么您可能希望标题与之一致。它只是节省了工作量,使内容更简单。
您可以使用以下方式设置样式:
<nav>
而不是为所有h1元素设置样式或为其提供ID。
答案 3 :(得分:-2)
第一个更好,因为标题应该描述要发生的事情,而不是导航的一部分。就像h1不应该在p里面。无论哪种方式,它都可能正常工作。