HTML 网页结构搭建:从语义化标签到整站规划
2025–2026 年做网页时,语义化 + 可访问性 + SEO + 维护性 已经不是可选项,而是几乎所有正规项目的基本要求。
下面从最基础的语义标签用法,到典型页面结构,再到多页面网站整体规划,给你一个清晰的现代实践路径。
一、HTML5 核心语义标签速查(必须记住的 12 个)
| 标签 | 主要语义含义 | 典型使用位置 | 常见错误用法 | SEO/无障碍加分 |
|---|---|---|---|---|
<header> | 介绍性内容或导航区 | 页面顶部 / 文章头部 | 放 logo + 搜索 + 广告 | 高 |
<nav> | 主要导航链接 | 主菜单、侧边栏导航、面包屑 | 把所有 a 标签都包进去 | 高 |
<main> | 文档最核心、唯一的主要内容 | 整个页面只能出现一次 | 放 footer、侧边栏、广告 | 极高 |
<article> | 独立、可独立分发的完整内容 | 博客文章、新闻、论坛帖子、卡片 | 放产品列表中的单个商品(用 section 更合适) | 高 |
<section> | 有主题的文档区块 | 章节、专题模块、Tab 内容 | 单纯为了布局而用(那是 div 的活) | 中 |
<aside> | 与主内容间接相关的补充内容 | 侧边栏、广告、相关文章、TOC | 放主要内容 | 中 |
<footer> | 结尾区域(版权、备案、联系方式) | 页面底部 / 文章结尾 | 放整个网站的导航(应该用 nav) | 中 |
<figure> + <figcaption> | 自包含的图文组合(图表、代码、照片等) | 文章插图、流程图、示例代码 | — | 高 |
<details> + <summary> | 可展开/收起的细节内容 | FAQ、隐私条款、附加说明 | — | 中高 |
<blockquote> | 长引用 | 引用名人名言、客户评价 | 短引用用 q 或引号 | 中 |
<address> | 联系信息(作者/公司/组织) | 文章署名、公司页脚 | 放普通邮箱链接 | 高 |
<time> | 机器可读的时间 | 发布时间、活动日期 | — | 高(结构化数据) |
二、2025–2026 年典型单页结构推荐模板(强烈建议背下来)
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="一句话描述页面核心内容">
<meta name="keywords" content="关键词1,关键词2"> <!-- 可选,重要性已下降 -->
<meta name="robots" content="index,follow"> <!-- 默认即可 -->
<title>页面标题 - 网站名称</title>
<!-- Open Graph / Twitter Card(社交分享优化) -->
<meta property="og:title" content="...">
<meta property="og:description" content="...">
<meta property="og:image" content="...">
<meta property="og:url" content="...">
<link rel="icon" href="/favicon.ico" type="image/x-icon">
<link rel="stylesheet" href="/css/main.css">
</head>
<body>
<!-- 可跳过导航(无障碍) -->
<a href="#main-content" class="sr-only">跳到主要内容</a>
<header class="site-header">
<div class="container">
<h1 class="site-title">
<a href="/">网站名称</a>
</h1>
<nav class="primary-nav" aria-label="主导航">
<ul>
<li><a href="/" aria-current="page">首页</a></li>
<li><a href="/products">产品</a></li>
<li><a href="/blog">博客</a></li>
<li><a href="/about">关于</a></li>
</ul>
</nav>
</div>
</header>
<main id="main-content">
<!-- 英雄区 / 焦点图 / 搜索 -->
<section class="hero">
<h1>欢迎来到我们的网站</h1>
<p>核心 slogan 或一句话介绍</p>
</section>
<!-- 主要内容区 -->
<div class="container content-grid">
<article class="primary-content">
<h2>文章/页面主标题</h2>
<p>核心正文...</p>
<figure>
<img src="..." alt="有意义的图片描述" loading="lazy">
<figcaption>图片说明文字</figcaption>
</figure>
</article>
<aside class="sidebar">
<h3>相关内容</h3>
<nav aria-label="侧边相关导航">
<!-- 热门文章、分类、标签云、广告等 -->
</nav>
</aside>
</div>
</main>
<footer class="site-footer">
<div class="container">
<p>&copy; 2026 公司名称. All rights reserved.</p>
<address>
联系我们:<a href="mailto:hello@example.com">hello@example.com</a>
</address>
<nav aria-label="底部导航">
<ul>
<li><a href="/privacy">隐私政策</a></li>
<li><a href="/terms">使用条款</a></li>
</ul>
</nav>
</div>
</footer>
<script src="/js/main.js" defer></script>
</body>
</html>
三、多页面网站整体规划建议(2025–2026 常见做法)
- 文件与目录结构推荐
project-root/
├── index.html # 首页
├── about/
│ └── index.html
├── products/
│ ├── index.html # 产品列表
│ └── product-001.html # 详情页
├── blog/
│ ├── index.html # 文章列表
│ └── 2025-03-slug-title.html
├── contact/
│ └── index.html
├── assets/
│ ├── css/
│ │ └── main.css
│ ├── js/
│ └── images/
├── components/ # 如果用 SSG 或组件化开发
└── partials/ # 公共头尾(如果用服务端包含或 SSG)
├── header.html
└── footer.html
- 页面类型与典型语义结构对应
| 页面类型 | 推荐 <main> 里主要内容结构 | 额外建议 |
|---|---|---|
| 首页 | hero → featured sections → latest articles | 大量 section + article |
| 文章详情页 | article(全文)→ comments / related articles | 用 time 标记发布时间 |
| 产品列表页 | section > ul > li > article(卡片) | 考虑 grid / flex + aria-label |
| 产品详情页 | article > figure(主图)+ tabs / sections | 用 dl + dt/dd 做规格表 |
| 关于我们 | section(公司介绍、团队、历史) | address 放公司信息 |
| 联系页面 | form + address + map | form 用 fieldset + legend |
- 现代网页必做的几件事(别忘了)
- 始终写
lang="zh-CN"或lang="en" - 每个
<img>必须有alt(装饰图用空 alt=””) - 所有交互元素要有合适的 ARIA(aria-label / aria-current / role)
- 使用
loading="lazy"+decoding="async"优化图片 - 跳过链接(skip link)放在最前面
- 标题层级不要跳跃(h1 → h2 → h3)
- 表单用
<label for="id">关联<input id="id">
你目前是在做哪一类页面?
是个人博客、公司官网、产品展示页、后台管理界面,还是想重点练习某种特定布局(比如新闻门户、电商详情页、文档站)?
告诉我你的具体目标,我可以给你更针对性的完整结构代码示例或注意事项。HTML 网页结构搭建:从语义化标签到整站规划
2025–2026 年做网页时,语义化 + 可访问性 + SEO + 维护性 已经不是可选项,而是几乎所有正规项目的基本要求。
下面从最基础的语义标签用法,到典型页面结构,再到多页面网站整体规划,给你一个清晰的现代实践路径。
一、HTML5 核心语义标签速查(必须记住的 12 个)
| 标签 | 主要语义含义 | 典型使用位置 | 常见错误用法 | SEO/无障碍加分 |
|---|---|---|---|---|
<header> | 介绍性内容或导航区 | 页面顶部 / 文章头部 | 放 logo + 搜索 + 广告 | 高 |
<nav> | 主要导航链接 | 主菜单、侧边栏导航、面包屑 | 把所有 a 标签都包进去 | 高 |
<main> | 文档最核心、唯一的主要内容 | 整个页面只能出现一次 | 放 footer、侧边栏、广告 | 极高 |
<article> | 独立、可独立分发的完整内容 | 博客文章、新闻、论坛帖子、卡片 | 放产品列表中的单个商品(用 section 更合适) | 高 |
<section> | 有主题的文档区块 | 章节、专题模块、Tab 内容 | 单纯为了布局而用(那是 div 的活) | 中 |
<aside> | 与主内容间接相关的补充内容 | 侧边栏、广告、相关文章、TOC | 放主要内容 | 中 |
<footer> | 结尾区域(版权、备案、联系方式) | 页面底部 / 文章结尾 | 放整个网站的导航(应该用 nav) | 中 |
<figure> + <figcaption> | 自包含的图文组合(图表、代码、照片等) | 文章插图、流程图、示例代码 | — | 高 |
<details> + <summary> | 可展开/收起的细节内容 | FAQ、隐私条款、附加说明 | — | 中高 |
<blockquote> | 长引用 | 引用名人名言、客户评价 | 短引用用 q 或引号 | 中 |
<address> | 联系信息(作者/公司/组织) | 文章署名、公司页脚 | 放普通邮箱链接 | 高 |
<time> | 机器可读的时间 | 发布时间、活动日期 | — | 高(结构化数据) |
二、2025–2026 年典型单页结构推荐模板(强烈建议背下来)
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="一句话描述页面核心内容">
<meta name="keywords" content="关键词1,关键词2"> <!-- 可选,重要性已下降 -->
<meta name="robots" content="index,follow"> <!-- 默认即可 -->
<title>页面标题 - 网站名称</title>
<!-- Open Graph / Twitter Card(社交分享优化) -->
<meta property="og:title" content="...">
<meta property="og:description" content="...">
<meta property="og:image" content="...">
<meta property="og:url" content="...">
<link rel="icon" href="/favicon.ico" type="image/x-icon">
<link rel="stylesheet" href="/css/main.css">
</head>
<body>
<!-- 可跳过导航(无障碍) -->
<a href="#main-content" class="sr-only">跳到主要内容</a>
<header class="site-header">
<div class="container">
<h1 class="site-title">
<a href="/">网站名称</a>
</h1>
<nav class="primary-nav" aria-label="主导航">
<ul>
<li><a href="/" aria-current="page">首页</a></li>
<li><a href="/products">产品</a></li>
<li><a href="/blog">博客</a></li>
<li><a href="/about">关于</a></li>
</ul>
</nav>
</div>
</header>
<main id="main-content">
<!-- 英雄区 / 焦点图 / 搜索 -->
<section class="hero">
<h1>欢迎来到我们的网站</h1>
<p>核心 slogan 或一句话介绍</p>
</section>
<!-- 主要内容区 -->
<div class="container content-grid">
<article class="primary-content">
<h2>文章/页面主标题</h2>
<p>核心正文...</p>
<figure>
<img src="..." alt="有意义的图片描述" loading="lazy">
<figcaption>图片说明文字</figcaption>
</figure>
</article>
<aside class="sidebar">
<h3>相关内容</h3>
<nav aria-label="侧边相关导航">
<!-- 热门文章、分类、标签云、广告等 -->
</nav>
</aside>
</div>
</main>
<footer class="site-footer">
<div class="container">
<p>&copy; 2026 公司名称. All rights reserved.</p>
<address>
联系我们:<a href="mailto:hello@example.com">hello@example.com</a>
</address>
<nav aria-label="底部导航">
<ul>
<li><a href="/privacy">隐私政策</a></li>
<li><a href="/terms">使用条款</a></li>
</ul>
</nav>
</div>
</footer>
<script src="/js/main.js" defer></script>
</body>
</html>
三、多页面网站整体规划建议(2025–2026 常见做法)
- 文件与目录结构推荐
project-root/
├── index.html # 首页
├── about/
│ └── index.html
├── products/
│ ├── index.html # 产品列表
│ └── product-001.html # 详情页
├── blog/
│ ├── index.html # 文章列表
│ └── 2025-03-slug-title.html
├── contact/
│ └── index.html
├── assets/
│ ├── css/
│ │ └── main.css
│ ├── js/
│ └── images/
├── components/ # 如果用 SSG 或组件化开发
└── partials/ # 公共头尾(如果用服务端包含或 SSG)
├── header.html
└── footer.html
- 页面类型与典型语义结构对应
| 页面类型 | 推荐 <main> 里主要内容结构 | 额外建议 |
|---|---|---|
| 首页 | hero → featured sections → latest articles | 大量 section + article |
| 文章详情页 | article(全文)→ comments / related articles | 用 time 标记发布时间 |
| 产品列表页 | section > ul > li > article(卡片) | 考虑 grid / flex + aria-label |
| 产品详情页 | article > figure(主图)+ tabs / sections | 用 dl + dt/dd 做规格表 |
| 关于我们 | section(公司介绍、团队、历史) | address 放公司信息 |
| 联系页面 | form + address + map | form 用 fieldset + legend |
- 现代网页必做的几件事(别忘了)
- 始终写
lang="zh-CN"或lang="en" - 每个
<img>必须有alt(装饰图用空 alt=””) - 所有交互元素要有合适的 ARIA(aria-label / aria-current / role)
- 使用
loading="lazy"+decoding="async"优化图片 - 跳过链接(skip link)放在最前面
- 标题层级不要跳跃(h1 → h2 → h3)
- 表单用
<label for="id">关联<input id="id">
你目前是在做哪一类页面?
是个人博客、公司官网、产品展示页、后台管理界面,还是想重点练习某种特定布局(比如新闻门户、电商详情页、文档站)?
告诉我你的具体目标,我可以给你更针对性的完整结构代码示例或注意事项。