我可以将页脚放在导航栏中吗?

Can I put footer in navbar?

我收到了一个项目的设计,客户希望将页脚放在主导航的侧边栏中。这样的结构是否正确?我的意思是从设计部分看起来不错,但从代码看起来很奇怪。

<nav class="Navbar">
    <div class="Navbar-content">
        <!-- some stuff -->
    </div>
    <footer class="Footer">
        <!-- footers content -->
    </footer>
</nav

在 w3 中没有禁止在导航栏中嵌套页脚的确切规则。 https://www.w3.org/html/wiki/Elements/footer

w3 验证器也没有将其识别为任何类型的错误,所以我想这没问题吧?

您可以在 nav 元素中包含一个 footer 元素。但它将代表该导航的页脚,而不是整个页面的页脚。

对于适用于整个页面的页脚,您必须放置 footer 元素,使其最近的部分父元素是 body 元素.这意味着它不能是 section/article/nav/aside 的后代,也不能是 body 以外的节根元素的后代(blockquotefigure 等)。

如果要在边栏中显示导航和页脚,可以为边栏使用 div 元素:

<body>

  <h1>…</h1>

  <div class="sidebar">
    <nav><!-- site-wide navigation --></nav>
    <footer><!-- site-wide footer --></footer>
  </div>

</body>