HTML: HTML 标题

标题标签为内容赋予了清晰的层级结构,这对于提升用户体验以及优化搜索引擎排名都至关重要。

1. 什么是标题标签

HTML 提供了从 <h1><h6> 共六个层级的标题标签。<h1> 表示最高级别(最重要),<h6> 表示最低级别(最不重要)。标题标签默认加粗显示,字号从 h1h6 依次递减。

标题的语义意义远大于它的视觉样式。搜索引擎和辅助技术(如屏幕阅读器)依赖标题标签来理解页面的内容结构,因此正确使用标题对SEO(搜索引擎优化)无障碍访问至关重要。

▶ 示例

HTML
<h1>一级标题(最重要)</h1>
<h2>二级标题</h2>
<h3>三级标题</h3>
<h4>四级标题</h4>
<h5>五级标题</h5>
<h6>六级标题(最不重要)</h6>
▶ 试一试

在上面的示例中,浏览器会自动为每个标题应用不同的字号和加粗样式。但请记住:不要为了改变字号而使用标题标签——应该用 CSS 来控制文字的样式,标题标签的职责是传达内容的层级结构。

✅ 最佳实践: 屏幕阅读器用户可以借助标题标签在页面中快速跳转。良好的标题层级就像是文章的目录——让读者(无论是否使用辅助工具)都能轻松把握内容的脉络。


2. 标题的使用规范

虽然标题标签用法简单,但在实际开发中需要遵循几条重要规范:

▶ 示例

HTML
<!-- 正确的标题层级 -->
<h1>网站标题</h1>
  <h2>文章分类</h2>
    <h3>子分类一</h3>
    <h3>子分类二</h3>
  <h2>相关内容</h2>

<!-- 错误的标题层级(跳级) -->
<h1>网站标题</h1>
  <h3>跳过 h2 直接用 h3</h3>  <!-- 这里缺了 h2 -->
    <h6>从 h3 跳到 h6,跳跃过大</h6>
▶ 试一试
⚠️ 常见误区: 不要为了使用小号文字而选择 <h6>,也不要为了大号文字而滥用 <h1>。标题的价值在于结构而非样式。样式问题交给 CSS 处理即可。


3. 标题的默认样式

浏览器为每个层级的标题内置了不同的字号和粗细,下面就来看看 h1~h6 在浏览器中的真实显示效果

<div style="background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px 20px;margin:16px 0">

<p style="font-size:2em;font-weight:bold;margin:0.67em 0">h1 标题 32px / 2em</p>

<p style="font-size:1.5em;font-weight:bold;margin:0.83em 0">h2 标题 24px / 1.5em</p>

<p style="font-size:1.17em;font-weight:bold;margin:1em 0">h3 标题 18.72px / 1.17em</p>

<p style="font-size:1em;font-weight:bold;margin:1.33em 0">h4 标题 16px / 1em</p>

<p style="font-size:0.83em;font-weight:bold;margin:1.67em 0">h5 标题 13.28px / 0.83em</p>

<p style="font-size:0.67em;font-weight:bold;margin:2em 0">h6 标题 10.72px / 0.67em</p>

</div>

一眼就能看出来:h1 最大最突出,h6 最小。这就是浏览器默认的标题样式,不同浏览器之间可能有微小的差异,但整体层级关系是一致的。

当然,这些默认样式可以通过 CSS 轻松覆盖。在实际项目中,开发者通常会重置浏览器的默认样式,然后根据设计稿重新定义标题的字号、颜色、间距等属性。

▶ 示例

CSS
/* CSS 自定义标题样式 */
h1 { font-size: 28px; color: #333; }
h2 { font-size: 22px; color: #555; }
h3 { font-size: 18px; color: #777; }
▶ 试一试
💡 小技巧: 上面虚线框里展示的是真实 h1~h6 标签效果,你可以打开浏览器的"检查"功能(F12),选中任意一个标题,在"样式"面板中看到它的 font-size 值,并实时修改预览效果。


4. 标题与页面大纲

当你为一个页面设置好标题层级后,浏览器和搜索引擎会为这个页面生成一个"目录"——这就是页面大纲(document outline)。你可以把标题标签想象成 Word 文档中的"标题样式":合理的标题层级能自动生成清晰的目录结构。

对于屏幕阅读器用户来说,标题层级就是他们在页面中导航的地图。一个好的标题结构可以让视障用户像阅读目录一样快速跳转到任意章节。如果标题层级混乱,他们就很难理解页面内容的组织方式。

对于搜索引擎来说,标题中的关键词是理解页面主题的重要信号。搜索引擎会给予合理使用标题标签的页面更高的权重。

▶ 示例

HTML
<!-- 一篇博客文章的标题大纲结构 -->
<h1>如何学习前端开发</h1>
  <h2>一、前端三剑客</h2>
    <h3>HTML — 结构</h3>
    <h3>CSS — 样式</h3>
    <h3>JavaScript — 交互</h3>
  <h2>二、学习路线</h2>
    <h3>初级阶段</h3>
    <h3>中级阶段</h3>
    <h3>高级阶段</h3>
  <h2>三、推荐资源</h2>
▶ 试一试

上面这个例子中,h1 是整篇文章的主题,h2 是三大章节,h3 是每个章节下的细分内容。这个层级关系清晰的大纲,让人一眼就能看懂文章讲的是什么。


5. 标题与语义化标签配合

HTML5 中,语义化标签(<article><section><nav><aside>)和标题标签经常配合使用。每个独立的区块内部,标题层级应重新从 h1h2 开始,而不是延续外层区块的层级。

▶ 示例

HTML
<body>
  <h1>我的博客</h1>

  <article>
    <h2>第一篇文章标题</h2>
    <p>文章内容...</p>
    <section>
      <h3>文章中的小标题</h3>
      <p>细分内容...</p>
    </section>
  </article>

  <article>
    <h2>第二篇文章标题</h2>
    <p>文章内容...</p>
  </article>

  <aside>
    <h2>关于作者</h2>
    <p>作者简介...</p>
  </aside>
</body>
▶ 试一试

注意每个 <article><aside> 内部都有自己的 <h2>,它们彼此独立,互不干扰。这种写法既符合语义化规范,也让页面结构更加清晰。


6. 标题的常见错误

初学者在使用标题标签时经常犯以下几类错误,对照检查一下你的代码:

错误类型 错误示例 正确做法
用标题控制字号 <h3>普通文字</h3>(只为小字号) <p> + CSS font-size
多个 h1 一个页面写 3 个 <h1> 只保留一个 <h1> 作为核心主题
跳级使用 h1 → h3 → h5 按顺序 h1 → h2 → h3 使用
空标题 <h2></h2>(没有文字内容) 标题中必须包含有意义的文字

▶ 示例

HTML
<!-- 错误:为了把文字变小而用 h6 -->
<h6>底部版权信息</h6>
<!-- 正确:版权信息用 p 标签,用 CSS 控制字号 -->
<p style="font-size: 12px; color: #999;">© 2024 我的网站</p>

<!-- 错误:跳级使用 -->
<h1>网站标题</h1>
  <h4>缺失了 h2 和 h3</h4>
<!-- 正确:按顺序递进 -->
<h1>网站标题</h1>
  <h2>一级章节</h2>
    <h3>二级小节</h3>

<!-- 错误:一个页面多个 h1 -->
<h1>第一部分</h1>
<h1>第二部分</h1>
<!-- 正确:只有一个 h1,其余用 h2 -->
<h1>页面标题</h1>
<h2>第一部分</h2>
<h2>第二部分</h2>
▶ 试一试
💡 一个实用的判断方法: 闭上眼睛,让你的同事或同学只读你页面上的标题文字。如果他们能通过这些标题理解页面的内容框架,说明你的标题层级用对了。这就是所谓的"标题测试"(Headings Test)——辅助技术用户就是这么"看"你的页面的。

❓ 常见问题

Q 一个页面可以有多个<h1>标签吗?
A 不推荐。HTML5规范虽然允许在<article><section>内使用多个<h1>,但从SEO和无障碍访问的最佳实践来看,每个页面应该只有一个<h1>,它代表页面的核心主题。多个<h1>会让搜索引擎困惑,不知道哪个是主要内容。如果你需要多个大标题,用<h2>代替。记住:<h1>是页面的"主标题",就像一本书的书名——一本书只能有一个书名。
Q 标题可以跳级使用吗?比如从<h1>直接到<h3>
A 绝对不可以。标题层级必须按顺序递进(h1h2h3),跳级使用会破坏文档结构,影响屏幕阅读器用户的导航体验。屏幕阅读器用户依赖标题层级来快速浏览页面内容,跳级会让他们误以为漏掉了某个章节。搜索引擎也会对跳级的标题给予较低的权重。如果觉得默认字号太大,用CSS调整,而不是跳过标题层级。
Q <h1><h6>的字号是固定的吗?可以自己改吗?
A 浏览器给<h1><h6>设置了默认字号(从大到小),但这只是默认样式,完全可以也必须用CSS自定义。标题标签的真正价值在于"语义"(表示内容的层级关系),而不是"视觉样式"。实际项目中,开发者通常会重置标题的默认样式,然后根据设计稿重新定义字号、颜色、间距。永远不要为了"让文字变大"而使用<h1>,也不要为了"让文字变小"而使用<h6>——这是初学者最常见的错误之一。

📖 小节

📝 作业

  1. 写一篇带标题的文章:用正确的 <h1><h2><h3> 层级结构写一篇短文,主题自选(例如"我的兴趣爱好")。要求至少用到 h1h2h3 三个层级。
  2. 找错题:以下标题层级有什么问题?把它改正确: <h1>我的博客</h1><h3>文章一</h3><h5>小标题</h5><h1>文章二</h1>
  3. 观察练习:打开一个新闻网站,用浏览器检查功能(F12)查看页面的标题层级结构,看看它们是否遵循了正确的标题规范。
Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏