7

我目前正在将页面从 HTML4 移动到 HTML5,但我遇到了一些问题。页脚中有一堆带有链接的列表。其中大多数链接到有关网站本身的信息(常见问题解答等)。所以我认为将它们放在 nav 元素中是可以的(请参阅“介绍 HTML5”和 HTHML5 Doctor)。但有两个列表包含指向 Facebook 等外部页面的链接。现在我可以把它们放在一边,但这有点极端:

“将网站上其他页面的链接包装在页脚内是合法的 - 但问问自己是否将 side 改为页脚的兄弟 [...] 毕竟,到其他页面的链接可能是与整个页面切线相关,而不仅仅是页脚的内容。” (介绍 HTML5)

我也可以将它们留在页脚内而不用包装它们。由于页脚中的所有链接列表都是一个“视觉单元”,我现在不想将外部链接完全从页脚中取出,即使这在语义方面可能更好。

我正在搜索具有类似页脚的 HTML5 站点,但找不到任何页脚。

你们认为最好的方法是什么?

谢谢

4

4 回答 4

11

我建议简单地使用<footer>其中的链接。

如果您想将链接包装在 a<nav>中,这是可以接受的,但我建议您不要这样做。该<nav>元素旨在标记“主要”导航块,而您将链接放在页脚中的事实表明它们不是主要的导航块。(从某种意义上说,<footer>几乎<nav>是矛盾的。)规范甚至专门讨论了这种情况:

并非页面上的所有链接组都需要位于 nav 元素中——该元素主要用于包含主要导航块的部分。特别是,页脚通常会包含指向网站各个页面的链接的简短列表,例如服务条款、主页和版权页面。对于这种情况,仅页脚元素就足够了;虽然在这种情况下可以使用 nav 元素,但通常没有必要。

至于<aside>,我会说如果你只在里面放几个链接就有点过分了,特别是因为它听起来像,虽然是外部的,但它们与其他链接一起属于。如果它对样式有帮助,并且外部链接感觉像是一个独立的单元,那么可以肯定——否则,不要打扰。我会说<footer>元素本身已经承载了足够多的语义。

于 2011-10-04T12:08:40.670 回答
3

您是否已经有footer要包装在 a中的链接,例如在nava中?(因为网站经常重复 中的链接)。navheaderheaderfooter

如果是这样,那么我建议根本不要将链接包装在 inside footeranav中,因为它们仅用于主导航,如果您要复制链接,那么只有一组(例如 中的那些header)应该是在一个nav

如果不是这种情况,并且没有一个footer链接是重复的并且是重要的,那么可以将一些包含在 a 中nav而其他的不包含,但将它们保留在页脚中。

不久前我写了一篇文章HTML5 - To nav or not to nav,这可能会有所帮助。

于 2011-10-04T11:32:13.653 回答
2

HTML5 规范实际上特别指出了页脚中各种网站页面链接的用例,因为您不需要使用<nav>这些用例:

<aside>页脚中的外部链接似乎很好(根据http://dev.w3.org/html5/spec-author-view/the-nav-element.html#the-nav-element),虽然我不知道它真正增加了多少意义。我认为您不需要将这些链接从页脚中删除。

不值得过多考虑您的 HTML 标记选择。谁实际上会对你的标记感到困惑?

于 2011-10-04T11:11:11.133 回答
0

如果您出于某种原因(即样式)不需要对外部页面的链接进行分组,我认为您的方法是可以的。

于 2011-10-04T11:03:48.033 回答