0

关于<nav>HTML5 标签。

这有什么区别:

<nav>
  <ul>
    <li><a href="#">Home</a></li>
    <li><a href="#">News</a></li>
    <li><a href="#">Photos</a></li>
  <ul>    
 </nav>

还有这个:(这行得通吗?)

<nav>
    <li><a href="#">Home</a></li>
    <li><a href="#">News</a></li>
    <li><a href="#">Photos</a></li>
 </nav>
4

2 回答 2

5

您不能将li元素放在ul/之外ol

但是您根本不必使用列表。您可以将这些a标签直接放在nav

<nav>
    <a href="#">Home</a>
    <a href="#">News</a>
    <a href="#">Photos</a>
</nav>

要了解更多历史和更彻底的探索,请阅读以下内容:

列表中的导航:成为或不成为

于 2013-11-08T20:00:20.260 回答
0

<li>在可以使用它的上下文ul之外或基于它的上下文是无效的。这个定义非常严格。ol

至于<nav>,它的内容模型是流式内容<li>不是流内容元素。同样,<nav>不必包含列表(<ul><ol>)。

我的理解是屏幕阅读器更好地支持导航列表,并且更好地用于搜索引擎优化,因为搜索引擎不会因为页面上列表的重复而惩罚您。如果你避开这份清单,他们可能会。我绝对没有证据支持这一点——这只是轶事。

就个人而言,我会使用最简单的有效 HTML。那只是<nav><a>孩子。

于 2013-11-08T20:05:10.010 回答