HTML 基础语法
HTML 的核心是标签(Tag)。标签用尖括号包裹,绝大多数成对出现:开始标签 <标签名> 和结束标签 </标签名>,中间夹着内容。也有少数自闭合标签,比如 <img>、<br>、<hr>,它们没有内容,不需要结束标签。
标签与属性的结构
属性(Attribute)写在开始标签里,格式是 属性名="属性值",多个属性用空格隔开。属性给元素补充信息:链接要去哪、图片的地址是什么、按钮的样式类是什么。
<a href="https://example.com" target="_blank">新窗口打开</a>
上面的 a 标签带了两个属性:href 指定链接地址,target 指定打开方式。
全局属性
有些属性几乎可以用在任何标签上,称为全局属性,最常用的几个:
| 属性 | 作用 | 示例 |
|---|---|---|
| id | 页面内唯一标识,配合 CSS/JS 定位 | id="header" |
| class | 样式类名,可多个,可复用 | class="btn btn-green" |
| title | 鼠标悬停提示文字 | title="更多说明" |
| style | 行内样式(少用) | style="color:red" |
| data-* | 自定义数据属性,供 JS 读取 | data-id="1001" |
| hidden | 隐藏元素 | hidden |
书写规范
- 标签名统一小写。HTML 不区分大小写,但大写在团队协作里会被当成不规范写法;
- 属性值用双引号包裹,即使只有一个单词;
- 标签必须正确嵌套:先开的先关,不能交叉,
<b><i>文字</b></i>是错的; - 用缩进体现层级,两个空格或一个 Tab,页面结构越复杂越重要;
- 每个页面只能有一个
<body>、一个<html>,id 不能重复。
注释
注释不会显示在页面上,用于给代码写说明。写法是 <!-- 注释内容 -->。调试时也可以临时把一段代码注释掉,看页面去掉它之后的效果。
常见错误排查
页面显示不正常时,先按这个顺序查:标签有没有闭合、嵌套顺序对不对、属性值有没有漏引号、文件名后缀是不是 .html。浏览器不会报错,只会"将错就错"地渲染,所以标签没闭合时页面可能整体乱掉,这时去检查配对是最快的。
代码示例
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>标签结构示例</title>
</head>
<body>
<!-- 这是注释,不会显示 -->
<h1 id="page-title" class="title">标签示例</h1>
<p>这是段落,里面有 <strong>加粗</strong> 和 <em>斜体</em> 文字。</p>
<a href="https://example.com" title="示例网站" target="_blank">新窗口打开链接</a>
<br>
<img src="logo.png" alt="网站标志" width="120">
<hr>
<p>上面是水平分割线。</p>
</body>
</html>
📚 HTML 标签速查
常用条目速查,完整版见对应教程章节。可复制代码到在线运行中测试。
| 写法 / 语法 | 作用 |
|---|---|
<h1>-<h6> | 标题,h1 最高,每页只用一个 h1 |
<p> | 段落,自动加前后间距 |
<a href=""> | 链接,href 是目标地址 |
<img src="" alt=""> | 图片,src 地址,alt 替代文字 |
<ul> / <li> | 无序列表 |
<ol> / <li> | 有序列表,数字编号 |
<dl> / <dt> / <dd> | 自定义列表:术语 + 说明 |
<table> / <tr> / <td> / <th> | 表格:行 / 单元格 / 表头 |
<form action="" method=""> | 表单,action 提交地址,method 提交方式 |
<input type=""> | 输入控件,type 有 text/password/email/number 等 |
<textarea> | 多行文本输入 |
<select> / <option> | 下拉框及选项 |
<button type="submit"> | 按钮,submit 提交表单 |
<strong> / <em> | 加粗(重要)/ 斜体(强调) |
<div> / <span> | 区块容器 / 行内容器 |
<header> <nav> <main> | 语义化:页眉 / 导航 / 主体 |
<section> <article> <aside> | 语义化:分节 / 独立内容 / 侧栏 |
<footer> | 页脚:版权、备案 |
<video> / <audio> | HTML5 视频 / 音频,加 controls 显示控制条 |
<iframe src=""> | 嵌入其他网页 |
<!-- 注释 --> | HTML 注释,不显示在页面 |
<br> / <hr> | 换行 / 水平分割线 |
<pre> | 保留空格和换行,原样显示 |
<blockquote> / <q> | 块级引用 / 行内引用 |
<figure> / <figcaption> | 图文组合及说明 |