<nav> - 这很重要吗?</nav>

时间:2011-08-04 10:27:50

标签: html5

我注意到,如果您移除nav中的HTML5元素,则链接列表与nav保持相同或不同。

那么,nav在这种情况下有什么用?它对我有什么影响。

是的,W3Schools.com提及以下nav

该标记定义了一段导航链接。

但是,正如我所提到的,添加一个即使删除影响的部分有什么用呢?

感谢。

4 个答案:

答案 0 :(得分:3)

虽然您通常会写<div id="nav">,但现在可以使用<nav>。它只是更具语义性而且没什么其他的。

这对于移动浏览器以及用户可能希望在导航中轻松跳转的其他挑战环境非常有用。浏览器可以很容易地找到导航方式。

答案 1 :(得分:3)

请记住,HTML最初的目的是成为一种标记语言,使文档的数字副本更易于访问。趋势将其从一个创意工具转移到了创意工具,但HTML5似乎又回归到原始概念。

<nav>添加了一种特定类型的无序列表 - 一个列表,表明它特别指的是导航。这是“为您添加”是一个更普遍可识别的文档标记 - 无论您是否使用文档的语言,您都可以识别区域以帮助您导航。是的,屏幕阅读器,搜索引擎等都已被提及,但这也是一个人性化的组件。仅仅关注来源,可以确定如何理解或组织文档。各种文档处理(包括发布者的PDF布局)的潜在好处是无法估量的。

请记住,语义带有单词的含义。您正在标记文本的一部分,以便文本在上下文中有意义。 <div>没有任何意义,但<article><section><nav>都会告诉您标签中包含的文字对整个文档的含义。

答案 2 :(得分:2)

它增加了语义。屏幕阅读器可以编码为自动跳过导航元素,或者搜索引擎机器人可以编码为不包含搜索结果片段中nav元素中的文本。

目前我没有意识到这些用例的任何实现,但是因为你可以使用导航而不是div,所以没有任何理由不这样做。

答案 3 :(得分:2)

继续使用W3Schools作为参考资料,你会走得很远;)

你的问题,可以通过举几个例子来更好地回答......然后解释它为何重要...... 但TL; DR版本与语义有关。

  • If you have a block of text, why do you wrap it in a <p> tag, when you don't need to. You can just as happily use a <span>, then set display:inline, set the margin-top:10px that a <p> uses and continue.

  • Also why do you wrap your content blocks in a <div>, it's to demarcate your content into meaningful areas.

那是什么呢。它表示屏幕阅读器,搜索引擎,甚至你的CSS选择器,如果你选择,这个标签的所有内容,应该在语义上被视为一个导航块。

您不需要它,但它肯定会帮助为您的网页内容指定相关性