Skip to content

HTML 标签参考指南

以下是按照重要程度降序排列的 HTML 标签表格,包含每个标签的作用、使用场景和注意事项:

标签作用使用场景注意事项
<html>定义 HTML 文档的根元素所有 HTML 文档的最外层容器必须包含 <head><body> 子元素
<head>包含文档的元数据放置标题、样式、脚本引用等不包含可见内容
<body>包含文档的可见内容放置所有用户可见的内容一个文档只能有一个 <body>
<div>通用块级容器页面布局、内容分组语义化较差,应优先使用语义标签
<p>定义段落文本内容的基本单位自动添加上下边距
<h1>-<h6>定义标题,h1 最重要页面标题、章节标题h1 每个页面只应有一个
<a>创建超链接链接到其他页面或资源必须设置 href 属性
<img>嵌入图像显示图片必须设置 src 和 alt 属性
<form>定义表单用户输入收集通常需要 action 和 method 属性
<input>表单输入控件文本、密码、复选框等输入根据 type 属性有不同表现
<button>定义按钮表单提交、触发事件默认类型为 submit
<script>嵌入或引用脚本客户端脚本执行通常放在 body 末尾以提高性能
<link>链接外部资源引入 CSS 样式表常用 rel="stylesheet" 属性
<meta>定义元数据字符集、描述、关键字等通常放在 head 中
<title>定义文档标题浏览器标签显示、SEO每个页面必须有且只有一个
<header>定义页面或 section 的头部页面标题、导航栏语义化标签,提高可读性
<nav>定义导航链接主导航、侧边栏导航语义化标签,通常包含多个 <a>
<section>定义文档中的节内容分区、章节语义化标签,应有标题
<article>定义独立的内容博客文章、新闻报道语义化标签,内容应可独立存在
<footer>定义页面或 section 的底部版权信息、联系方式语义化标签
<ul>定义无序列表项目列表、菜单子元素必须是 <li>
<ol>定义有序列表步骤说明、排名子元素必须是 <li>
<li>定义列表项列表中的每一项必须在 <ul><ol>
<table>定义表格数据展示包含 <tr><th><td>
<tr>定义表格行表格的一行包含 <th><td>
<td>定义表格单元格表格的数据单元格通常在 <tr>
<th>定义表头单元格表格的标题单元格默认加粗居中
<span>通用行内容器文本样式、小范围标记不自动换行
<br>插入换行符文本换行自闭合标签,无结束标签
<hr>定义水平线内容分隔自闭合标签,无结束标签
<strong>定义强调文本重要内容强调浏览器通常加粗显示
<em>定义斜体文本强调或着重浏览器通常斜体显示
<meta charset>定义字符编码确保正确显示特殊字符通常设置为 UTF-8
<meta name="viewport">定义视口设置响应式设计移动端适配必备
<script src>引用外部脚本加载外部 JavaScript 文件应考虑加载顺序
<style>定义内部样式页面样式定义放在 head 中
<iframe>嵌入另一个文档嵌入地图、视频等注意安全风险
<video>嵌入视频播放视频内容支持多种格式
<audio>嵌入音频播放音频内容支持多种格式
<canvas>绘制图形图表、动画需要 JavaScript 操作
<svg>定义矢量图形图标、简单图形可缩放且不失真
<fieldset>对表单元素分组相关表单控件分组通常与 <legend> 配合
<legend>定义 fieldset 的标题表单分组标题必须在 <fieldset>
<label>定义表单控件的标签提高可访问性应与表单控件关联
<select>定义下拉列表选项选择包含 <option> 子元素
<option>定义下拉列表中的选项下拉列表的选项必须在 <select>
<textarea>定义多行文本输入长文本输入可设置 rows 和 cols 属性
<blockquote>定义长引用引用他人内容通常有缩进效果
<cite>定义引用的来源引用来源标注通常斜体显示
<code>定义代码代码片段等宽字体显示
<pre>定义预格式化文本保留空白和换行的文本通常用于代码块
<abbr>定义缩写缩写词标注可使用 title 属性显示全称
<address>定义联系信息作者、网站联系信息通常斜体显示
<time>定义日期/时间时间相关内容可使用 datetime 属性
<figure>定义独立内容图片、图表等通常与 <figcaption> 配合
<figcaption>定义 figure 的标题图片说明、图表标题必须在 <figure>
<main>定义主要内容页面核心内容每个页面只应有一个
<aside>定义侧边内容侧边栏、相关链接语义化标签
<details>定义可折叠内容常见问题、详情<summary> 配合使用
<summary>定义 details 的标题可折叠内容的标题必须在 <details>
<mark>定义标记文本高亮显示通常黄色背景
<bdi>定义双向文本隔离处理混合方向文本较少使用
<bdo>定义文本方向覆盖默认文本方向较少使用
<data>定义机器可读数据数据与显示分离较少使用
<output>定义计算结果表单计算输出与表单配合使用
<progress>定义进度条任务完成度可设置 value 和 max 属性
<meter>定义度量值温度、磁盘使用等可设置 min、max、value 属性
<picture>响应式图片容器根据设备选择图片包含 <source><img>
<source>定义媒体资源<picture><video><audio> 提供源必须指定 srcset 或 src 属性
<track>定义媒体轨道视频字幕、字幕<video><audio> 配合
<dialog>定义对话框模态框、弹出窗口可设置 open 属性
<menu>定义命令列表上下文菜单较少使用,通常用 <ul> 代替
<menuitem>定义菜单项菜单中的选项已废弃,使用 <li> 代替
<command>定义命令按钮命令按钮已废弃
<applet>嵌入 Java 小程序运行 Java 程序已废弃,使用 <object> 代替
<basefont>定义基准字体文档字体设置已废弃,使用 CSS 代替
<big>定义大号文本文本放大已废弃,使用 CSS 代替
<center>定义居中内容内容居中已废弃,使用 CSS 代替
<font>定义字体字体样式设置已废弃,使用 CSS 代替
<strike>定义删除线文本文本删除线已废弃,使用 <del> 或 CSS 代替
<tt>定义等宽文本等宽字体已废弃,使用 <code> 或 CSS 代替
<u>定义下划线文本文本下划线已废弃,使用 CSS 代替

标签重要性说明

  1. 核心结构标签<html>, <head>, <body> - 构成 HTML 文档的基本框架
  2. 常用布局标签<div>, <header>, <nav>, <section>, <article>, <footer> - 页面布局的主要元素
  3. 文本内容标签<p>, <h1>-<h6>, <span>, <strong>, <em> - 文本内容的基本单位
  4. 链接和媒体标签<a>, <img>, <video>, <audio> - 链接和媒体内容
  5. 表单标签<form>, <input>, <button>, <select>, <textarea> - 用户输入和交互
  6. 元数据标签<meta>, <title>, <link>, <style> - 文档元数据和样式
  7. 语义化标签<main>, <aside>, <details>, <summary>, <figure>, <figcaption> - 提高文档可读性和可访问性
  8. 表格和列表标签<table>, <tr>, <td>, <th>, <ul>, <ol>, <li> - 数据和列表展示
  9. 其他功能性标签<script>, <canvas>, <svg>, <iframe> - 特殊功能实现
  10. 废弃标签:如 <font>, <center>, <strike> 等 - 已被 CSS 替代,不建议使用

最佳实践

  1. 语义优先:优先使用语义化标签,提高代码可读性和可访问性
  2. 合理嵌套:遵循 HTML 嵌套规则,确保标签正确嵌套
  3. 属性完整:为必要的标签设置完整的属性(如 <img> 的 src 和 alt)
  4. 性能优化:合理使用脚本和样式,避免过度使用复杂标签
  5. 响应式设计:使用 <meta name="viewport"> 和响应式标签确保移动端适配
  6. 可访问性:为表单元素添加标签,确保屏幕阅读器正常工作
  7. SEO 友好:合理使用标题标签,添加适当的元数据

基于 VitePress 的本地知识库