HTML 字符实体
在 HTML 里,尖括号 <、> 是标签的分隔符,直接输入会被当成标签解析;而 ©、®、¥ 这类符号键盘上也不好敲。字符实体(Character Entities)就是解决这类问题的"转义写法",让特殊字符安全地显示在页面上。
什么是字符实体
字符实体以 & 开头、以 ; 结尾,共有两种写法:
- 实体名称:如 ©,好记,但个别老浏览器不认识部分名称。
- 实体编号:如 ©,用数字表示字符,兼容性最好。
两种写法显示效果完全相同,页面里可以混用。
常用字符实体表
| 字符 | 实体名称 | 实体编号 | 说明 |
|---|---|---|---|
< | < | < | 小于号,避免被当作标签开始 |
> | > | > | 大于号 |
& | & | & | 和号 |
" | " | " | 双引号 |
' | ' | ' | 单引号 |
| (空格) | 不间断空格 | ||
| © | © | © | 版权符号 |
| ® | ® | ® | 注册商标 |
为什么要转义这三个字符
想在页面上真正显示 <p> 这几个字符(而不是被解析成标签),就必须转义:
<p>要显示标签:<p> 是段落标签</p>
<!-- 在浏览器中显示为:要显示标签:<p> 是段落标签 -->
写 & 本身也要转义成 &,否则浏览器可能把后面的字符误读成某个实体的开头。
不间断空格
普通空格在页面里会被浏览器合并成一个,而 是"不可断行"的空格,用来分隔数字与单位等,保证中间不会换行断开:
<p>商品价格:99 元</p> <!-- 99 与 元 之间不折行 -->
易错点
- 结尾的分号不能丢:写成 © 会显示成乱码字符。
- 实体名称区分大小写:© 有效,© 一般不被识别。
- 中文不需要转义,UTF-8 编码下直接书写即可;需要转义的只有 & < > 等少量字符。
- 页面编码混乱时,实体编号 © 比实体名称更可靠。
小结:字符实体让 HTML 能安全显示保留字符与特殊符号,最常用的是 <、>、& 与 ,见到"& 开头、; 结尾"的写法,就是字符实体。