唯一确定的来源是 HTML5 规范。它定义了这些元素的含义。
对于header element:
header 元素表示一组介绍性或导航帮助。
对于footer element:
footer 元素表示其最近的祖先分段内容或分段根元素的页脚。页脚通常包含有关其部分的信息,例如作者、相关文档的链接、版权数据等。
这两个部分都提供了更多用于预期用途的 cmets 和示例。
用我自己的话来说:
footer 是存放元数据的地方,例如作者姓名、出版日期、类别/标签等。每个分段元素(section、article、aside、nav)都可以有自己的@ 987654334@ 元素。如果footer 不是这样一个分节元素的一部分,它适用于整个页面。示例:
<body>
<article>
<footer><!-- metadata about the article --></footer>
</article>
<footer><!-- metadata about the whole page --></footer>
</body>
header 元素用于介绍性内容,如标题、摘要/摘要、“NSFW”等警告。
请注意,HTML5 规范不包含与 header 相同的关于分割元素的措辞,就像 footer 的情况一样。但是,这已经是fixed in HTML5.1(参见relevant bug),并且可能也会在 HTML5 中进行更改。
你不应该注意这些元素的命名。 header 也可以出现在文章的末尾,footer 也可以出现在文章的开头。
整体情况:header 和 footer(和 address)可用于标记不部分的分段元素(或整个页面)的内容分节元素(或整个页面)的主要内容。
一个没有footer的简单例子:
<article>
<h1>About me</h1>
<h2>What I love</h2>
<p>I like <cite>The Hitchhiker's Guide to the Galaxy</cite>.</p>
<h2>What I hate</h2>
<p>I hate <cite>Pacman</cite>.</p>
<p>Tags: <a href="/personal">personal</a>, <a href="/fandom">fandom</a></p>
</article>
↑ 这里最后一段(包含本文的标签)将在标题“我讨厌什么”的范围内。这当然是错误的,因为我不讨厌“标签”、“个人”或“狂热”。所以我们应该在标记中反映这一点,这样这个段落就不会与前面的标题相关联:
<article>
<h1>About me</h1>
<h2>What I love</h2>
<p>I like <cite>The Hitchhiker's Guide to the Galaxy</cite>.</p>
<h2>What I hate</h2>
<p>I hate <cite>Pacman</cite>.</p>
<footer>
<p>Tags: <a href="/personal">personal</a>, <a href="/fandom">fandom</a></p>
</footer>
</article>
↑ 现在我们将标签放在footer 中,它们不再属于“我讨厌什么”的范围。相反,它们现在代表整个 article 元素的页脚(→ 元数据)。