# SEO

Heading 结构:兼顾 SEO 与无障碍的实操指南

Heading 结构:兼顾 SEO 与无障碍的实操指南

Heading 用来命名章节并表达不同概念之间的关系。它帮助读者扫读、辅助技术导航、生成目录,也让搜索系统更清楚地理解页面。它的价值来自真实内容大纲,不是重复关键词或把每行粗体都变成 Heading。

实际操作以一个清楚 H1 为默认

Browser 与 Google 可以处理不完美结构,多 H1 也不会自动造成处罚。不过当前 MDN 建议使用一个描述页面的 H1,再以逻辑嵌套的 H2–H6 展开。这让设计、无障碍与 Template QA 都有一个稳定主标题。

快速答案:每个层级只负责一个任务

层级文件任务常见用途
H1命名页面主要主题或任务一个清楚页面标题
H2开启主要主题下的大章节范围、流程、价格、证据、FAQ
H3拆分一个 H2 的相关子章节步骤组、选项或子问题
H4拆分真正的 H3 子章节详细方法或嵌套例子
H5–H6服务特别深入的文件技术规格或长篇标准
CSS Class只控制视觉字号、粗细、颜色与间距

Heading 表达结构,不负责字体大小

按照章节关系选择 Heading Level。H2 可以通过 CSS 显示较小,Paragraph 也可显示很大。一句粗体不自动成为 Heading。

W3C 建议按 Rank 嵌套,打开子章节时尽量不要跳级。从 H4 回到 H2 可以是结束深层章节;但 H2 下直接开启 H4 通常会令人困惑。

目的使用不要使用
命名页面H1Large Styled Paragraph
开启主要章节H2因为想小一点而用 H3
开启子章节H2 下的 H3没有语义的 Bold Text
显示短 Labelp/span + CSS只为 Typography 用 Heading
组织 NavigationLandmark + 必要的 Heading意外跟随 篇文章 深度

为什么一个 H1 是最稳健惯例

一个 H1 能让 CMS Template、Design System、Screen Reader Heading List 与自动检查都明确识别主标题。这是为了清楚与维护,不是隐藏 Ranking Factor。

现有页面有多个 H1 时先调查原因。Logo、Modal、Embedded 篇文章 或 Reusable Component 可能自动产生;不要不看关系就把全部改成 H2。

发现可能含义处理
一个描述性 H1主主题清楚保留并确认页面独有
没有 H1视觉标题用错 Element 或数据缺失加入真正可见 Page Title
两个竞争 H1看不出主标题选择一个,重整另一部分
Logo/Site Name 每页都是 H1Global Header 抢走标题Brand Link 不用 Heading;正文拥有 H1
Widget 内多个 H1组件语义没有协调按所在页面决定 Level

对齐 Title Element、视觉标题与 H1

HTML <title> 在 Browser 与搜索环境命名 Document;H1 命名可见页面。文字可不同,但必须承诺同一个主题与任务。Title 可加入精简品牌或搜索 Context,H1 则保持自然。

Google 生成 Title Link 时会参考 Title、Heading 与其他 Prominent Text。如果多个大标题竞争,可能使用第一个。配合Title Tag 流程保持一致。

元素主要位置良好关系
<title>Browser Tab / 搜索 SourcePage Identity + Optional Brand
H1可见主标题同一目的、自然可读
Hero EyebrowCategory / Context短 Label,不竞争
Hero SubheadingAudience / Outcome支持而不代替 H1
og:titleSocial Preview同一 Destination Promise

写章节前先建立大纲

先定义 Page Job,再列出访客需要的问题、决定或步骤。相关内容组成 H2,H2 真的有子主题才加入 H3。如果离开正文就看不懂大纲,Heading 可能太空泛或只为装饰。

七步 Outline Test
  1. 把页面唯一目的写成 Draft H1。
  2. 列出访客主要问题、决定或阶段。
  3. 合并重叠项,删除不支持 Page Job 的章节。
  4. 把剩下主要组写成描述性 H2。
  5. H2 真有子章节时才加入 H3。
  6. 只读 H1–H3,检查是否像清楚目录。
  7. 顺序按 User Journey,不按任意 Keyword List。

Heading 离开正文也要看得懂

Screen Reader 用户可能打开 Heading List 或逐个跳转。“Why it matters”重复出现时会失去意义。应命名真正 Topic、Result 或 Decision,同时保持精简。

WCAG 2.2 要求已使用的 Heading 与 Label 描述 Topic 或 Purpose,并不要求很长。

较弱更清楚原因
Why it mattersWhy internal links improve discovery指出主题
Our solution技术 SEO audit and implementation解释工作
More informationWebsite maintenance response times预测章节内容
Step 3Validate redirects before launch加入任务
Amazing resultsOrganic leads after the migration以证据代替 Hype
FAQBacklink service frequently asked questions多个 FAQ Group 时更清楚

按页面类型规划 Heading

页面H1 任务实用 H2
首页page品牌主要 Offer / Value服务、Proof、Work、Insights、联系
Service服务结果与受众Best Fit、Scope、Process、Deliverables、Pricing、FAQ
篇文章回答 Query 或承诺任务Definition、Decision、Workflow、Example、Mistake、FAQ
Hub / Category集合与学习目的Start Here、Subtopics、Resources、Updates
Product / Tool产品与主要用途Use Case、Feature、Setup、Limit、Price、Support
案例项目与相关结果Context、Challenge、Approach、Work、Result、Lesson
联系联系或询盘任务方式、准备资料、回应预期
FAQ Page支持范围Topic Group + Individual Questions

Card 只有构成真实章节才使用 Heading

Card Title 在 Service、篇文章 或 Project 有自己的内容时,可以是 Heading。Statistic、Badge、Button 与小 Label 通常不需要。

Repeated Card 的 Level 跟随 Container。H2 下的 Grid 通常使用 H3;Reusable Component 可能需要可配置 Level,不能永远 Hard-code H2。

ComponentHeading 决定检查
Service Card有独立内容时通常使用Level 跟随 Grid
博客 Card篇文章 Title 可为 HeadingLinked Heading 描述目标
Image-only 作品集Accessible Link Label 可能足够不要 Hidden Keyword Heading
Statistic Card通常 Plain TextValue / Label 关联
Pricing Package独立 Option 可用 HeadingFeature 属于该 Package
CTA Panel是真章节才用Button Text 不是 Heading

谨慎处理 Accordion、Tab、Modal 与 菜单

Interactive Control 需要 Accessible Name、Role 与 State。FAQ 问题同时是章节标题时,Accordion Button 可放在 Heading 内,但仍要有正确 Expanded State 与 Keyboard Behaviour。

Tab Panel 要和 Control 建立程序关系。Dialog Heading 用来命名 Dialog,不应成为第二个 Page H1。

Component内容结构无障碍检查
AccordionFAQ H2 下的问题可用 H3Button Name + aria-expanded
TabsPanel Title 跟随页面层级Tab / Panel Relationship
Modal / Dialog使用描述性 Dialog TitleLabel 与 Focus Management
Mega 菜单Navigation Group 与 Label不扭曲 篇文章 Outline
CarouselSlide 真是章节才用 HeadingHidden Slide 不制造重复
Tooltip不是 Document Section使用 Control Description

固定区域在不同 Template 保持一致

Navigation、Sidebar 与 Footer 可以有自己的 Heading 和 Landmark。W3C 指出固定 Page Region 应保持一致 Heading Rank,不要因为 Main 篇文章 深度不同而改变。

适当使用 <nav><main><aside><footer>

Global Template 检查
  • Main Content 有一个稳定 H1。
  • Header Logo 不成为每个 Route 的 H1。
  • Navigation Group Label 跨 Template 一致。
  • Sidebar 不复制 篇文章 H1。
  • Footer Heading 描述真实 Link Group。
  • Mobile / Desktop Navigation 副本不会同时暴露 Heading。
  • Cookie Banner 与 Popup 不产生 H1。
  • Main 与 Fixed Region 一起看仍有逻辑。

为目录使用稳定 Heading ID

页面足够长时可使用 Table of Contents。以编辑控制的 Slug 或 Stored Identifier 生成 Unique Stable ID,让 Visible Heading 改字时不必破坏所有 Shared Deep Link。

Sticky Header 遮住目标时可用 scroll-margin-top。同时测试 Keyboard Focus、History、翻译与 Duplicate Heading。

风险例子控制
Duplicate ID两个 “Examples”Unique Stored ID
Broken Deep LinkHeading 改字Purpose 相同时保留 ID
目标被挡Sticky Header滚动 Offset + Focus Test
Non-Latin Slug编码中文 Fragment 难分享Stable Readable Convention
Collapsed SectionAnchor 进入关闭 Accordion自动 Reveal Target
Empty TOCScript 在内容前执行从 Final Rendered Headings 生成

本地化意义,不只翻译 Heading 文字

每个语言页面需要自然完整的大纲。不要让英文 Heading 留在马来文或中文正文,也不要强迫三个语言使用相同语序。Hierarchy 与 Page Job 等同即可。

Google 建议 Prominent Text 与页面主要 Language 和 Writing System 一致。

三语 Heading QA
  • H1 已本地化且在该语言内独有。
  • Title 与 H1 描述同一个本地化目的。
  • Template Fallback 不留下混合语言。
  • 对应翻译保持相同 Heading Level。
  • Heading 仍描述后续章节。
  • TOC Label 与 Fragment 在每种语言可用。
  • 文字扩展不破坏 Mobile Layout。
  • Hreflang 与 Canonical 对齐正确页面。

防止 CMS 与 Page Builder 制造噪音

Template 往往比 Writer 制造更多问题。Logo Widget、Reusable Block、Card、Hidden Responsive Copy 与 Empty Field 可以影响几百个 URL。

应修复 Source Component,不要逐页改 Generated Output。修改 Shared Template 前先 Sample 多种 Page Type。

Pattern可能来源修复
每页同一 H1Global Template / Logo绑定 Page Title;更换 Brand Markup
Empty H2/H3Optional Field 仍 Render Tag有 Content 才 Render
H2 后直接 H4Visual-size DropdownSemantic 与 Style 分开
几十个 H2 CardHard-coded ComponentContextual Level 或 Plain Text
Mobile Heading 重复两个 Layout 同时 Exposed一个 Semantic Source 或正确隐藏
Icon-only HeadingDecorative Widget移除或提供真正 Label
每题都是 H2FAQ Component 忽略 ContainerFAQ H2 下适当使用 H3

结合 Crawl 数据与人工 Outline Review

Crawler 可找 Missing、Empty、Duplicate、Multiple H1 与 Rank Jump,但不能判断 “Overview” 是否清楚、两个 H2 是否应合并,或 Mobile Reading Order 是否正确。

把自动发现当成 Review Queue,检查代表 Template 与高影响页面,再优先修复 Shared Cause。

自动发现能证明什么人工问题
Missing H1Parsed Output 没有 H1Visible Title 是否用了错误 Element?
Multiple H1存在超过一个 H1互相竞争还是独立 Context?
Duplicate H1不同 URL 重复文字Duplicate Page 还是有效相同 Product Name?
Skipped Rank数字层级跳过开启子章节还是结束前一章节?
Very Long Heading超过工具 Threshold真的不清楚还是只是具体?
Empty Heading没有 Accessible TextIcon 或 CSS 是否隐藏问题?

从页面到 Template 完成审核

12 步 Heading Workflow
  1. 导出可索引 URL、Title、H1 与 Heading Count。
  2. 按 Template 与业务重要度分组。
  3. 检查每个核心 Template 的 Desktop 与 Mobile。
  4. 确认可见主标题是一个描述性 H1。
  5. 比较 Title、H1 与 Opening Answer 是否同一目的。
  6. 离开 Paragraph 阅读 H1–H6 Outline。
  7. 标记空泛、空白、装饰、重复与错误 Rank。
  8. 测试 Card、Accordion、Tab、Dialog、菜单 与 Hidden Content。
  9. 测试 Keyboard 与 Screen Reader Heading Navigation。
  10. 检查所有语言是否混合并保持等同层级。
  11. 优先修复 Reusable Component。
  12. 重新 Crawl、比较 Template 并记录 QA。

衡量清晰度,不制造 Ranking 声明

Heading Cleanup 可能改善导航与理解,但不能把排名改变只归因于 Heading Order。Intent、Content、Link、Competition、Technical Eligibility 与 Result Presentation 都会影响。

衡量 Page Task:Guide 可看 TOC 使用、Section 合作方式 与 Next Step;Service Page 应看 Qualified Enquiry,而不只 滚动 Depth。

目标证据Guardrail
更快找到章节TOC、Navigation Test、User Observation更多 Click 不一定更好
理解页面承诺Task Test、减少即时困惑Title/H1/Content 对齐
改善无障碍Screen Reader Outline + WCAG Review自动工具不完整
减少 Template 缺陷Missing/Empty/Competing H1 减少Clean Report 不证明文字好
支持搜索理解稳定 Query Relevance 与 Page Performance不承诺 Heading-only Lift
改善转化路径CTA Progress 与 Qualified Enquiry考虑同时发生的 Content Change

常见 Heading 错误

  • 用 Heading Level 控制 Font Size。
  • 每句粗体或 Card Label 都变 Heading。
  • 大部分 Heading 重复 Exact Keyword。
  • Brand Logo 每页都是 H1。
  • 两个同样突出的 Page Title。
  • 打开子章节时从 H2 跳 H4。
  • 没有 Context 就修复所有 Multiple-H1 Warning。
  • Card Component Hard-code Heading。
  • 重复使用空泛 “Learn More”。
  • Optional Field 留下 Empty Heading。
  • Mobile 与 Desktop Markup 同时暴露重复 Heading。
  • 以为完美 Outline 能让弱或不相关内容排名。

常见问题

每个页面都需要 H1 吗?

多数有意义、可索引页面应有一个清楚可见 H1。Utility Screen 可能有不同界面需要,但仍须 Accessible Title 或 Label。

一个页面可以多个 H1 吗?

Browser 与 Google 能处理,所以不是自动处罚。不过普通网页与 Template QA 仍以一个描述性 H1 最可靠。

Title Tag 与 H1 必须完全相同?

不需要。可因为品牌、长度或页面可读性改变文字,但必须描述同一个 Page Purpose。

H2 可以直接跳 H4 吗?

开启子章节时尽量避免。前一个深层章节结束后从 H4 回到新 H2 则没问题。

Heading 需要 Exact-match Keyword 吗?

不需要。使用读者理解章节所需的自然文字。

文章应有多少个 H2?

没有固定数量。按照 Page Task 需要的主要章节决定,并删除没有帮助的部分。

每张 Card Title 都要 Heading?

只有 Card 构成有意义章节时。小 Label、Statistic 与 Button 通常不需要 Heading。

FAQ 问题使用 H2 还是 H3?

看 Container。如果 “常见问题” 是 H2,单独问题通常是 H3。

Heading Structure 会影响排名吗?

它帮助表达结构,但改变 Level 没有保证排名提升。应为清晰、无障碍与维护改善,再衡量整个页面。

自动 SEO Tool 能修好层级吗?

Tool 可找 Pattern,但人必须判断关系、文字、Component Context 与 Reading Order。

官方参考资料

需要更明确的下一步?让用户只看大纲也能理解页面。

分享代表 Template 或 Crawl Export。Jack 可以整理 H1–H6、移除 Page Builder 噪音、对齐 Title 与 Heading,并优先处理可复用修复。

讨论 Heading Structure Audit

Jack Lee

Jack Lee

Building 搜索 Visibility with SEO, GEO & AI 辅助网站 ,分享来自实际项目和实验的经验。