关于html5中的标题结构的架构,存在很多争论。阅读各种文章之后,我得出了对我来说合乎逻辑的三种可能的体系结构,但是我不确定哪种方法是实际的正确方法。我将在下面用代码示例列出它们,并希望有人可以阐明适当的平衡,或更糟/更好的平衡,说出可怕的“您做错了”并伸出援手。
方法1:版本A
单个<h1>
:仅将标题用于页面特定的内容。
在内容区域内按需<h1>
流动时<h2-6>
,这将保留页面特定标题的顶级导航。虽然离开<header>
,<nav>
和<footer>
作为“无题”的元素。
<header>
<nav>
<!-- no headings -->
<div role="main">
<h1>
<section>
<h2>
<section>
<h3>
<footer>
<!-- no headings -->
方法1:版本2
多个<h1>
:仅将标题用于特定于页面的内容。
与1A相同,但增加了多个同等重要的页面内容主题。(例如,可能适用于博客或主题拆分页面)
<header>
<nav>
<!-- no headings -->
<div role="main">
<h1>
<article>
<h2>
<article>
<h1>
<footer>
<!-- no headings -->
方法1概述: 对SEO最合乎逻辑(根据我的研究得出的意见)
- 无标题的身体
- 无标题资产净值
- 主要标题
- 节标题
- 小节标题
- 无标题的部分
方法二:
多个<h1>
:强调大纲结构和内容层次结构
这适用于标题站点范围元素<header>
,<nav>
和<footer>
使用多个<h1>
的非面向内容的元素。
<header>
<h1>
<nav>
<h2>
<div role="main">
<h1>
<section>
<h2>
<section>
<h3>
<footer>
<h1>
<section>
<h2>
方法2大纲: 对语义大纲最合乎逻辑(再次,我认为)
- 标头标题
- 导航标题
- 主要标题
- 节标题
- 小节标题
- 页脚标题
- 节标题
方法3
单<h1>
:内容层次结构焦点;<h1-6>
站点级元素的较低级别
这会将标题应用于整个站点范围的元素<header>
,<nav>
而对于面向非内容的元素,<footer>
则不使用多个<h1>
。
<header>
<h2>
<nav>
<h3>
<div role="main">
<h1>
<section>
<h2>
<section>
<h3>
<footer>
<h2>
<section>
<h3>
方法3概述: 两种方法的混合
- 标头标题
- 导航标题
- 主要标题
- 节标题
- 小节标题
- 页脚标题
- 节标题
因此,我如何理解所有这些?有没有一种方法比另一种方法具有更多的语义价值?在SEO方面是否更有意义?是否有可以实现的幸福平衡?
资料来源: 还有更多,这些是我目前记得的