我目前正在将一个页面从HTML4移动到HTML5,我有一个问题。页脚中有一堆链接列表。他们中的大多数链接到关于网站本身的信息(常见问题等)。所以我认为将它们放在一个nav元素中是可以的(参见“HTML5简介”和HTHML5 Doctor)。但是两个列表包含指向Facebook等外部页面的链接。现在我可以把它们放在一边,但这有点边缘:
“将链接包含在网站上的其他页面并将其放在页脚内部是合法的 - 但要问问自己,是否要将其作为页脚的兄弟[...]毕竟,链接到其他页面页面大概与整个页面相关,而不仅仅是页脚的内容。“ (HTML5简介)
我也可以将它们留在页脚内而不包裹它们。由于页脚中的所有链接列表都是“可视单元”,我现在不想完全从页脚中取出外部链接,即使在语义方面可能更好。
我正在搜索类似页脚的HTML5网站但找不到任何内容。
你们认为最好的方法是什么?
由于
答案 0 :(得分:9)
我建议只使用带有链接的<footer>
。
如果你想将链接包裹在<nav>
中,那是可以接受的,但我会反对它。 <nav>
元素用于标记“主要”导航块,并且您将链接放在页脚中这一事实表明它们不是主要的导航块。 (从某种意义上说,<footer>
和<nav>
几乎是矛盾的。)规范甚至talks specifically关于这种情况:
并非页面上的所有链接组都必须位于nav元素中 - 该元素主要用于由主要导航块组成的部分。特别是,页脚通常会有一个指向网站各个页面的链接的简短列表,例如服务条款,主页和版权页面。 单独的页脚元素足以满足此类情况;虽然在这种情况下可以使用nav元素,但通常是不必要的。
对于<aside>
,如果你只想在其中添加一些链接,我会说它太过分了,特别是因为它听起来像是外部的,它们与其他链接一起存在。如果它有助于造型,并且外部链接感觉像是一种独立的单元,那么肯定 - 否则,不要打扰。我会说<footer>
元素本身已经带有足够的旁白语义。
答案 1 :(得分:3)
您是否已将footer
中的链接包含在nav
中,已包含在nav
中,例如header
中? (因为网站经常复制header
中的footer
个链接。
如果是这样,那么我建议不要将footer
中的链接包裹在nav
内,因为它们仅用于主导航,如果您要复制链接,那么只有一个集合(例如header
中的集合)应该在nav
中。
如果不是这种情况,并且footer
个链接都不是重复的并且很重要,那么可以将其中一些包含在nav
中而不包含其他链接,但将它们保留在页脚中
前段时间我写了一篇文章HTML5 - To nav or not to nav,有一段时间可能有所帮助。
答案 2 :(得分:2)
HTML5规范实际上特别调用了页脚中各种网站页面链接的用例,正如您不需要使用<nav>
那样:
<aside>
对于页脚中的外部链接似乎很好(根据http://dev.w3.org/html5/spec-author-view/the-nav-element.html#the-nav-element),虽然我不知道它真正增加了多少含义。我认为你不需要从页脚中取出这些链接。
不值得过度考虑您的HTML标签选择。实际上谁会对你的标记感到困惑?
答案 3 :(得分:0)
如果由于某种原因(即样式)不需要将链接分组到外部页面,我认为您的方法没问题。