语义化 HTML5 教程

掌握语义化 HTML:从 Div 泛滥到清晰结构

学习如何使用语义标签构建可访问、可维护且对 SEO 友好的页面。本指南涵盖核心标签、实际示例、常见错误和实用的迁移步骤。

什么是语义化 HTML?

语义化 HTML 使用有意义的元素来描述结构和意图。与其到处使用通用容器,不如使用诸如 <header>、<nav>、<main> 和 <footer> 等标签,向浏览器、搜索引擎和辅助技术传达文档角色。

之前 → 之后
非语义化布局
<div class='header'>...</div>
<div class='content'>...</div>
<div class='footer'>...</div>
语义化布局
<header>...</header>
<main>...</main>
<footer>...</footer>
>

为什么语义化 HTML 很重要

语义化结构是产品质量的倍增器:带来更好的可用性、更好的搜索可见性和更低的维护成本。

可访问性

屏幕阅读器和键盘用户依赖地标和标题层级。语义标签改善了导航和上下文理解。

SEO 清晰度

搜索引擎能更好地理解内容层次结构和页面目的,从而提高索引质量和相关性。

可维护性

清晰的结构减少了大型代码库中的上手时间、审查摩擦和意外回归。

8 个核心语义标签

这些标签涵盖了大多数生产布局。在求助于通用容器之前,请有意识地使用它们。

<header>

介绍区域

页面或区块介绍的首部区域:徽标、标题、摘要、实用操作。

<nav>

主导航

仅用于主要的导航链接。避免用 nav 包裹每一个小型链接列表。

<main>

主要内容

页面的主要内容。每个文档使用一个 main 元素。

<section>

主题分组

具有共同主题的分组内容,通常由标题引入。

<article>

独立单元

自包含的内容,可以独立重用或联合发布。

<aside>

补充内容

相关但次要的内容:侧边栏、相关链接、标注。

<footer>

页脚上下文

页面或区块的元数据和实用链接。

<figure>

带说明的媒体

与 figcaption 配对的插图、图表、代码截图。

实用迁移工作流程

通过三个可靠的步骤,从杂乱的 div 包装器迁移到语义化结构。

1

粘贴现有标记

原样粘贴您的 Vue/React/HTML 标记。

2

运行智能转换

将结构容器映射到语义标签,同时保持代码完整性。

3

审查并应用

验证地标和标题,然后合并到您的代码库中。

最佳实践

  • 每个页面只使用一个 <main> 元素。
  • 仅当存在标题/主题时才使用 <section>。
  • 仅对独立内容使用 <article>。
  • 保持标题层级结构 (h1 → h2 → h3)。
  • 仅在原生语义不足时,才将语义与 ARIA 结合使用。

常见错误

  • 在一个页面上使用多个 main 元素。
  • 用 nav 包裹每一个链接组。
  • 仅为了样式而使用语义标签。
  • 用随意的容器替换有意义的内容流。
  • 通过跳过标题层级来破坏可访问性。

准备好为您的 HTML 添加语义了吗?

使用语义 HTML 清理器,快速安全地升级遗留标记。保持您的代码清晰、可扩展且对搜索引擎友好。

开始清理 HTML