<nav>
<a href="#">Home</a>
<a href="#">Kontakt</a>
<a href="#">Jovan</a>
</nav>
或
<nav>
<ul>
<li> <a href="#">Home</a> </li>
</ul>
</nav>
哪个更好?当只有nav
和<a>
或后者时。在第一个不应该放在CSS <inline>
答案 0 :(得分:4)
Accoridng W3 spec on <nav>
,任何类型flow content
都可以接受。而且,并非它非常重要,但W3和&amp; MDN使用<ul>
展示其使用情况(并且,为了它的价值,W3甚至包括一个高于<ul>
的标题来标题该部分。)
就我个人而言,我认为<ul>
比单独<a>
更好地描述了多个链接,但这实际上取决于您希望如何做到这一点。 <ul>
在简单浮动锚点上也比多个链接更具语义性。
答案 1 :(得分:3)
就个人而言,我使用一个清单。我更喜欢这个,因为它可以更强大,如果你需要它。例如,如果您的样式需要镶嵌边框,则可以轻松地在<a>
上创建一个亮边框,在<li>
上创建一个较暗的边框来创建该效果。
然而,与此同时,list方法的样式可以简单,就像你只使用<a>
的
此外......两者之间没有明显的速度差异。
答案 2 :(得分:1)
这完全取决于你。 <nav>
元素只需要包含主导航,它不必在列表中。但是通常使用列表,因为导航菜单往往是项目列表。
因此,如果您的导航包含项目列表,那么它可能应该是一个列表。
答案 3 :(得分:0)
从我的角度来看,第一个解决方案是最好的解决方案,因为你的菜单是一个导航,它使用的代码较少,并且(据我所知)并且对于seo来说是第二个解决方案。
<nav>
<a href="#">Home</a>
<a href="#">Kontakt</a>
<a href="#">Jovan</a>
</nav>
如果你在nav
中使用其他元素,例如ul
,ol
,h1
,table
(!)或其他什么,那么它应该是语义上的正确。因此,如果您的菜单是一个列表,那么使用ul
就可以了。如果您只想在里面添加元素以便更容易设置样式,请使用div
和/或span
。
<强>更新强>
在评论中进行一些讨论后:在大多数情况下,菜单是一个列表,然后ul
方法是一个很好的选择。如果您使用ul
,则根据Steve