article 内标题层级须严格语义化:每个 article 有且仅有一个 h1 作主主题,后续按 h2→h3→h4→h5→h6 线性递进,不可跳级或倒置;副标题应使用 p 或 span 而非标题标签,层级深度依内容逻辑粒度而定。

article 标签内的标题层级应严格遵循语义化与逻辑嵌套原则,不是样式问题,而是结构问题。正确设计的核心是:用 h1 到 h6 按内容重要性逐级降序使用,且必须保持连续、不跳级、不重复,确保可访问性(如屏幕阅读器识别)和 SEO 可读性。
h1 必须且仅出现一次
每个 article 元素内应有且仅有一个 h1,代表该独立内容块的主主题。它不是页面全局标题(那是 body 顶层的 h1),而是 article 自身的“小封面”。例如一篇博客正文、一个研究节选、一个案例分析模块,其内部 h1 就是该模块的核心命题。
层级必须线性递进,不可跨级或倒置
从 h1 开始,后续标题只能是 h2 → h3 → h4 → h5 → h6,中间不能跳跃(如 h1 后直接 h4),也不允许降级后又升回(如 h2 后出现 h1)。常见错误包括:
- 用 h2 写小节标题,却把关键子项写成 h6(应为 h3)
- 为“强调视觉”而滥用 h1–h6 控制字号(应靠 CSS 控制样式,而非语义标签)
- 多个 h1 并列在同一个 article 中(破坏语义唯一性)
副标题不使用 h2–h6,而用其他语义元素
主标题下的副标题(如说明范围、方法、限定条件等)不属于标题层级,不应强行塞进 h2–h6。正确做法是:
- 用 header 包裹 h1 + 副标题,副标题用 p 或 span,并添加 aria-hidden="true"(若仅为装饰)
- 或使用 hgroup(虽已从 HTML5.3 移除,但部分浏览器仍支持;更推荐现代替代方案)
- 实际开发中,常用 h1 + div.subtitle 配合 CSS 控制视觉权重,保持语义纯净
嵌套结构需与内容粒度匹配
标题层级反映的是内容的逻辑拆解深度,不是“为了用满六级”。多数 article 实际只需 h1–h3,少数复杂技术文档才用到 h4。判断依据是:
- h2:对应一级分节(如“实验方法”“结果分析”“讨论”)
- h3:对应 h2 下的子模块(如“样本采集流程”“数据清洗步骤”)
- h4 及以下:仅当某子模块内部仍有明确、独立、可命名的逻辑单元时才启用(如“温度校准参数”“湿度误差补偿公式”)
不复杂但容易忽略

















