Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 我应该使用nav还是ul_Html_Css_Cross Browser - Fatal编程技术网

Html 我应该使用nav还是ul

Html 我应该使用nav还是ul,html,css,cross-browser,Html,Css,Cross Browser,我正在制作一个导航菜单,我应该使用元素还是元素 如果我使用nav,我可能需要使用一个shiv,这样它就可以跨浏览器工作 如果是这样,使用nav比使用ul有什么好处 编辑: 我知道你可以把ul放进nav我的问题是为什么要使用nav?nav元素在语义上更具体,所以通常是更好的选择。例如,搜索引擎会理解其中的链接代表导航,而不是一个简单的链接列表(可能是推荐帖子或相关项目等)。nav是一个语义html5元素,它的引入是为了指出此代码是页面的导航。对于“普通的非语义”搜索引擎,使用ul还是nav没有区别

我正在制作一个导航菜单,我应该使用
元素还是
元素

如果我使用
nav
,我可能需要使用一个shiv,这样它就可以跨浏览器工作

如果是这样,使用
nav
比使用
ul
有什么好处

编辑:


我知道你可以把
ul
放进
nav
我的问题是为什么要使用
nav

nav元素在语义上更具体,所以通常是更好的选择。例如,搜索引擎会理解其中的链接代表导航,而不是一个简单的链接列表(可能是推荐帖子或相关项目等)。

nav
是一个语义html5元素,它的引入是为了指出此代码是页面的导航。对于“普通的非语义”搜索引擎,使用
ul
还是
nav
没有区别。他们将毫无问题地理解这两个问题。目前,使用这些语义元素不会给您带来真正的好处


小心,使用这些html5元素会破坏IE,因此您需要“注册”它们,以便IE将它们识别为可设置样式的html元素。

不要与
混淆。它们可以一起用于导航菜单

Nav
是一个HTML5标签。如果您正在HTML5中创建一些东西,您可以使用
,因为没有任何限制,但并非所有浏览器都能正确呈现这些内容

 <nav>
    <ul>
        <li><a href="default.asp">Home</a></li>
        <li><a href="news.asp">News</a></li>
        <li><a href="contact.asp">Contact</a></li>
        <li><a href="about.asp">About</a></li>
    </ul>
</nav>
这将创建一个导航栏,您必须放置一些CSS样式才能使其看起来更好


上述两个代码将产生相同的结果。唯一的区别是
nav
告诉浏览器该元素是用于导航的。

您通常应该在
中使用列表,如下所示:

<nav>
  <ul>
    <li>...</li>
  </ul>
</nav>


取决于具体情况,但大多数情况下,您将同时使用这两种方法

<nav>
    <ul>
        <li><a href="#">item1</a></li>
        <li><a href="#">item2</a></li>
        <li><a href="#">item3</a></li>
        <li><a href="#">item4</a></li>
        <li><a href="#">item5</a></li>
    </ul>
</nav>

<!-- Or just links -->

<nav>
    <a href="#">Item</a>
    <a href="#">Item</a>
    <a href="#">Item</a>
</nav>


两者在语义上都是正确的。

如果您想使用
nav
,但要避免不支持它的浏览器出现任何问题,最简单的做法是不要对其应用任何样式,而是将其环绕在
div
上,并改为使用该样式

<nav>
    <div class="nav">
        <ul>
            <li><a href="?">List Item Link</a></li>
            <li><a href="?">List Item Link</a></li>
            <li><a href="?">List Item Link</a></li>
        </ul>
    </div>
</nav>


就我的观点而言,我会使用
ul
仅仅是因为IE6和IE7仍然拥有相当大的市场份额,而且我知道我不必为了获得
ul
而跳槽。无论如何,现在它更简单。

nav和ul元素都可以用于在html5中创建菜单

  • 导航元素告诉我们正在处理一个主要的导航块
  • 该列表表明此导航块内的链接构成一个项目列表
但是,您可以在菜单创建中同时使用nav和ul

<nav>
 <ul>
    <li>item 1</li>
    <li>item 2</li>
 </ul>
</nav>

  • 项目1
  • 项目2

选择nav还是ul取决于您

如果我不使用nav,SEO友好性会降低吗?如果不是的话,我看不出它有什么好处nav@qwertymk正如我所说的,没有SEO优势(目前),在可预见的未来也没有。
<nav>
 <ul>
    <li>item 1</li>
    <li>item 2</li>
 </ul>
</nav>