HTML 实体解码器
HTML 实体编码与解码,在特殊字符和实体引用之间转换。所有处理在浏览器中完成。
统计信息
如何使用 HTML 实体解码器
选择模式
选择编码(文本转实体)或解码(实体转文本)模式。
输入内容
在输入框中输入要转换的文本或 HTML 实体。
转换并复制
点击转换按钮查看结果,并可一键复制。
什么是 HTML 实体?
HTML 实体是用于在 HTML 文档中表示特殊字符的编码方式。例如 < 表示 <,& 表示 &。实体以 & 开头,以 ; 结尾,可以是命名实体(如 )或数字实体(如 <)。
实体类型
命名实体
使用名称引用,如 < > & "
十进制数字实体
使用十进制 Unicode 码位,如 < >
十六进制数字
使用十六进制码点,如 & 表示 &, < 表示 <
常见问题
HTML 实体用于在 HTML 中安全地显示特殊字符,避免与 HTML 语法冲突。例如,要在页面中显示 < 符号,应使用 <。
支持所有常见的 HTML5 命名实体,包括 &、<、>、"、'、 等。
命名实体更易读(如 <),而数字实体可以表示任何 Unicode 字符(如 😀 表示笑脸 emoji)。
HTML5 规范(现为 WHATWG Living Standard)定义了 2231 个命名字符引用——相比 HTML 4.01 的 252 个是巨大的扩展。其中包括 ©(版权符号)、€(欧元符号)和 ✓(对勾)等符号。每个命名实体也都有对应的数字形式,例如版权符号可用 © 或 © 表示。
在 HTML 中,将 < 转义为 <,> 转义为 >,& 转义为 &;在属性值中还要将 " 转义为 "。XML 1.0 恰好预定义了五个实体——即上述四个加上 '——HTML5 也支持 ',尽管 HTML 4 并不支持。其中 & 最为关键:未转义的 & 符号后跟字母可能被误读为实体的开头。
双重编码是指已经编码的文本再次被编码:& 先变成 &,然后变成 &amp;。可见的症状是页面上显示出字面的 & 或 &。解决办法是在值进入 HTML 上下文的边界处精确解码一次——本工具可让你分别验证每一次转换。
它们解决的是不同的问题。百分号编码(%20)是 RFC 3986 规定的 URL 标准,应当用于 href 属性内部;HTML 实体(&)转义的是标记字符,只适用于 URL 嵌入 HTML 的场合。包含 & 和空格的查询参数值通常需要两层处理:空格用百分号编码,而分隔用的 & 在标记中写作 &。
是的——自 2014 年前后起,命名字符引用表已在所有主流浏览器中完整实现,包括 HTML5 为向后兼容而保留的不带分号的旧式实体。数字引用(© 或 ©)更为稳妥,因为它们只依赖 Unicode 码点,而不依赖浏览器的查找表。