代码之家  ›  专栏  ›  技术社区  ›  Lazar Ljubenović

HTML允许在导航区内放置按钮吗?

  •  0
  • Lazar Ljubenović  · 技术社区  · 6 年前

    这个 spec says 以下是关于 <nav> 元素(矿山):

    nav元素表示页面中 或页面中的部分:带有导航的部分 链接

    它从来没有明确说过 <button> 是不允许的,而且在任何地方它只说 <a> 元素应该用于导航(但是它提到了“链接”),但是所有的例子似乎都是列表中的一堆锚。这个 one example (11) 这不是一个列表,它仍然只有用于导航的锚元素。

    这个 next example (12)

    那么,按钮元素允许在里面吗 < ?

    3 回复  |  直到 6 年前
        1
  •  1
  •   unor Daniel Garijo    6 年前

    在HTML5.2中, section 4.8. 链接 :

    链接是一个概念结构,由 a area ,和 link 元素,表示两个资源之间的连接[]

    正如人们所料 a (“超链接”), area (“超链接”),以及 link (“链接”等),均指链接,而 button input 不。

    • A nav 元素应包含 href 属性( / 地区 链接 导航 首先(例外除外)。

    • 导航

        2
  •  1
  •   nhlm    6 年前

    HTML5标准允许在 <nav> -标签和 <button> <按钮> 是完全由javascript驱动的UI元素(或者在某些棘手的场景中,使用表单时浏览器的默认行为),没有任何功能或语义引用指向第三方引用。因此使用 < <导航> -对于不考虑javascript的客户机/机器人来说,标记毫无意义。

    像Bootstrap、Semantic UI等现代UI框架提供了以多种方式实现按钮的能力(例如 <按钮> -标签以及 <a> -标签)。考虑到这些能力,你应该更愿意依靠 <a>

        3
  •  0
  •   sanjsanj    6 年前

    取决于你如何定义“允许”。

    它是有效的HTML,但您可能需要了解可访问性以及按钮(应指示可单击的操作)和链接(应导航到某个位置)之间的区别。

    http://web-accessibility.carnegiemuseums.org/content/buttons/