HTML 实体解码器

HTML 实体编码与解码,在特殊字符和实体引用之间转换。所有处理在浏览器中完成。

即时转换 编码与解码 客户端处理

如何使用 HTML 实体解码器

1

选择模式

选择编码(文本转实体)或解码(实体转文本)模式。

2

输入内容

在输入框中输入要转换的文本或 HTML 实体。

3

转换并复制

点击转换按钮查看结果,并可一键复制。

什么是 HTML 实体?

HTML 实体是用于在 HTML 文档中表示特殊字符的编码方式。例如 &lt; 表示 <,&amp; 表示 &。实体以 & 开头,以 ; 结尾,可以是命名实体(如 &nbsp;)或数字实体(如 &#60;)。

实体类型

命名实体

使用名称引用,如 &lt; &gt; &amp; &quot;

十进制数字实体

使用十进制 Unicode 码位,如 &#60; &#62;

十六进制数字

使用十六进制码点,如 &#x26; 表示 &, &#x3C; 表示 <

常见问题

为什么要使用 HTML 实体?

HTML 实体用于在 HTML 中安全地显示特殊字符,避免与 HTML 语法冲突。例如,要在页面中显示 < 符号,应使用 &lt;。

支持所有 HTML5 命名实体吗?

支持所有常见的 HTML5 命名实体,包括 &amp;、&lt;、&gt;、&quot;、&apos;、&nbsp; 等。

数字实体和命名实体有什么区别?

命名实体更易读(如 &lt;),而数字实体可以表示任何 Unicode 字符(如 &#128512; 表示笑脸 emoji)。

HTML5 定义了多少个命名实体?

HTML5 规范(现为 WHATWG Living Standard)定义了 2231 个命名字符引用——相比 HTML 4.01 的 252 个是巨大的扩展。其中包括 &copy;(版权符号)、&euro;(欧元符号)和 &check;(对勾)等符号。每个命名实体也都有对应的数字形式,例如版权符号可用 &#169; 或 &#xA9; 表示。

在 HTML 和 XML 中,哪些实体必须始终转义?

在 HTML 中,将 < 转义为 &lt;,> 转义为 &gt;,& 转义为 &amp;;在属性值中还要将 " 转义为 &quot;。XML 1.0 恰好预定义了五个实体——即上述四个加上 &apos;——HTML5 也支持 &apos;,尽管 HTML 4 并不支持。其中 &amp; 最为关键:未转义的 & 符号后跟字母可能被误读为实体的开头。

什么是双重编码?如何识别它?

双重编码是指已经编码的文本再次被编码:& 先变成 &amp;,然后变成 &amp;amp;。可见的症状是页面上显示出字面的 &amp; 或 &#38;。解决办法是在值进入 HTML 上下文的边界处精确解码一次——本工具可让你分别验证每一次转换。

URL 应该使用 HTML 实体还是百分号编码?

它们解决的是不同的问题。百分号编码(%20)是 RFC 3986 规定的 URL 标准,应当用于 href 属性内部;HTML 实体(&amp;)转义的是标记字符,只适用于 URL 嵌入 HTML 的场合。包含 & 和空格的查询参数值通常需要两层处理:空格用百分号编码,而分隔用的 & 在标记中写作 &amp;。

所有浏览器都支持每一个 HTML5 实体吗?

是的——自 2014 年前后起,命名字符引用表已在所有主流浏览器中完整实现,包括 HTML5 为向后兼容而保留的不带分号的旧式实体。数字引用(&#169; 或 &#xA9;)更为稳妥,因为它们只依赖 Unicode 码点,而不依赖浏览器的查找表。

{-- * External Resources Component(#18 Phase 3b 内容佐证工程) * 工具页「权威引用」区块:RFC / W3C / WHATWG / ECMA / IANA / 官方规范站 / Wikipedia。 * * - 接受 :slug 属性 → 经 config/tool-sources.php 家族矩阵渲染该工具的权威引用 * - slug 未命中映射时不渲染(无权威来源的工具静默跳过) * - 链接 title 保持英文(引用源专名);description 经 * common.resources.descriptions.{key} 本地化,lang 未命中回退英文(线上不裸奔) * - 链接保持 dofollow(rel="noopener noreferrer") * * @param string|null $slug --}}