W3Schools.com,我很确定我记得看到 W3C.org 状态<menu>
应该用于工具栏菜单和列出表单控制命令。
那么,我应该在主菜单中使用哪一个?Nav
, 或Menu
? 有关系吗?
nav
用于内部链接(a
元素)组。通常这意味着链接应该转到单独的页面,或者在 AJAX 页面的情况下更改内容。单击项目时,预计会发生某种内容更改nav
。
menu
用于控制组 ( a
, input
, button
)。通常这意味着输入应该在页面内执行功能。menu
单击某个项目时,预计会有某种 javascript 交互。
nav
:网站的导航。
menu
:Web 应用程序的菜单。
这是一篇HTML5Doctor 帖子,nav
其中有一节介绍了它的不同之处menu
(基本上,在实际应用程序中使用它)。看起来像你想要nav
的。
它<menu>
通常用于上下文菜单。
MDN 有很好的文档:https ://developer.mozilla.org/en-US/docs/Web/HTML/Element/menu
获得此答案的最佳位置是他们自己的 HTML 5 标准。
菜单在HTML 5.1 2nd Edition中定义。
它,“……代表一组命令。”
导航在HTML 5中定义。
它是“……链接到其他页面或页面内部分的页面部分:带有导航链接的部分。”
有一些我没有包括但认为很重要的导航注释,但我认为最好让您自己从标准中获得定义。
这篇文章中标记为答案的定义接近正确,但其中包含使答案本身错误的无关陈述。
<nav>
是一个部分(如<section>
或<article>
),因此它将出现在您的 HTML 文档大纲中。因此,我会使用<menu>
99% 的时间。对我来说,是和<nav>
之间的混合,加上应该专门用于导航的限制,而可以用于任何可能被称为菜单(包括导航栏)的东西。所以大部分导航栏,虽然是导航栏,但并不符合 的严格要求,反而更合适。<section>
<menu>
<nav>
<menu>
<nav>
<menu>
在我的 Web 开发生涯中,我从未发现我希望我的导航栏成为文档大纲的一部分。