课时17:HTML 字符实体¶
学习目标:理解字符实体的作用机制,掌握常用字符实体的语法与应用场景,能够正确处理 HTML 中的特殊字符显示问题。
一、字符实体的概念¶
1.1 为什么需要字符实体¶
HTML 文档中存在两类特殊字符,无法直接在文本中书写:
- 键盘无法输入的符号:如版权符号 ©、注册商标 ®、数学符号等
- 会被浏览器解析为标签的符号:如尖括号
<和>,若直接写入文本,浏览器会将其误认为 HTML 标签进行解析
1.2 空白折叠的回顾¶
在前序课程中学习的 (不间断空格)是字符实体的一种,用于解决 HTML 中多个空格被折叠为单个的问题:
除了 之外,HTML 还提供了大量其他字符实体,覆盖各类特殊符号需求。
二、字符实体的语法规范¶
2.1 标准格式¶
所有字符实体遵循统一的书写规范:
| 组成部分 | 符号 | 作用 |
|---|---|---|
| 开头 | & |
and 符,实体的起始标记 |
| 中间 | 实体名称 | 具体符号的标识名称(如 lt、gt、copy) |
| 结尾 | ; |
分号,实体的结束标记 |
2.2 语法规范的重要性¶
&和;是字符实体的核心组成部分,不可省略- 实体名称通常为小写(如
<而非<) - 缺少分号可能导致浏览器解析异常,尤其在实体连续使用时
三、核心应用场景¶
3.1 场景一:显示键盘无法输入的符号¶
| 符号 | 实体名称 | 说明 |
|---|---|---|
| © | © |
版权符号(Copyright) |
| ® | ® |
注册商标(Registered Trademark) |
| ™ | ™ |
商标符号(Trademark) |
| ¥ | ¥ |
人民币符号 |
| € | € |
欧元符号 |
| ° | ° |
度符号 |
| × | × |
乘号 |
| ÷ | ÷ |
除号 |
3.2 场景二:防止标签被浏览器解析¶
问题演示:直接在文本中写入标签代码,浏览器会将其解析为真实标签:
解决方案:使用字符实体替换尖括号:
| 符号 | 实体名称 | 记忆方式 |
|---|---|---|
< |
< |
less than |
> |
> |
greater than |
" |
" |
quotation |
& |
& |
ampersand |
' |
' |
apostrophe |
四、常用字符实体速查表¶
| 类别 | 实体名称 | 显示效果 | 使用场景 |
|---|---|---|---|
| 空格 | |
不间断空格 | 强制保留空格 |
| 尖括号 | < |
< | 显示 HTML 标签代码 |
> |
> | 显示 HTML 标签代码 | |
| 引号 | " |
" | 属性值中的引号 |
' |
' | 英文撇号 | |
| 版权 | © |
© | 版权声明 |
| 商标 | ® |
® | 注册商标 |
™ |
™ | 商标标识 | |
| 货币 | ¥ |
¥ | 人民币价格 |
€ |
€ | 欧元价格 | |
$ |
$ | 美元价格 | |
| 数学 | × |
× | 乘法运算 |
÷ |
÷ | 除法运算 | |
± |
± | 正负号 | |
° |
° | 温度/角度 |
五、实体编号(补充了解)¶
5.1 两种等效写法¶
字符实体除了使用名称(如 <),还可以使用实体编号(如 <):
5.2 对比¶
| 写法 | 格式 | 可读性 | 推荐度 |
|---|---|---|---|
| 实体名称 | < |
高(有语义) | 推荐 |
| 实体编号 | < |
低(纯数字) | 了解即可 |
实体编号基于 Unicode 编码值,理论上可表示任何字符,但名称写法更直观易记,是日常开发的首选。