Skip to content
HTML 实体编码 / 解码
Tools

HTML 实体编码 / 解码

转义与反转义 HTML 实体,可选数字编码方式。

Mode
Encode
Output

HTML entities reference

Punctuation, arrows, currency, maths and Greek — click any code to copy it.

Symbol Named Decimal Hex
Punctuation & quotes
Arrows
Currency
Maths & technical
Greek letters
Symbols
Copied

Runs entirely in your browser. Nothing is uploaded.

在线编码与解码HTML实体

这款 HTML实体 工具将三项功能集于一处:将文本编码为HTML实体、将实体解码还原为可读文本,并提供可搜索的 HTML实体列表 供您直接复制。在左侧输入框中输入或粘贴内容,转换结果会即时显示在右侧——可在 编码解码 模式之间切换,互换两个输入框,并一键复制输出结果。

所有操作均在浏览器本地运行,您转换的文本不会上传至任何服务器。无需安装任何程序,无需创建账号,也没有使用次数限制。即使断网后刷新页面仍可正常使用——因为整个过程完全不依赖服务器请求。

HTML实体是什么,为何如此重要

HTML实体是代表某个字符的简短代码,始终以和号(&)开头,以分号(;)结尾——例如 &amp; 代表和号,&nbsp; 代表不换行空格。实体存在的原因有两个:第一,HTML中有几个字符属于 保留字符:直接使用原始的 <>& 可能被浏览器解析为标记语言而破坏页面结构,因此需分别写成 &lt;&gt;&amp;

第二,实体使您能够在页面中嵌入 特殊字符——重音字母、货币符号(如人民币¥)、数学符号和箭头——这些字符难以直接输入,或在编码转换时可能丢失。对保留字符进行转义,能有效防止一个多余的 < 破坏页面布局,或用户输入变成意外标签。这是Web安全的基本原则,也是处理用户输入时必须进行HTML实体编码的核心原因。

命名实体、十进制实体与十六进制实体

每个字符都有三种写法。命名实体 使用可读的关键词——&copy; 表示版权符号©;十进制 数字实体使用该字符的Unicode码点的十进制表示——&#169;十六进制 实体则使用十六进制表示——&#xA9;。三种写法均输出相同的©。

命名实体可读性最佳,但仅约2200个字符拥有HTML5命名实体。HTML4仅定义了约255个。HTML5命名字符引用标准在此基础上大幅扩充,新增了数百个数学运算符、箭头及印刷符号。十进制或十六进制数字实体可覆盖所有Unicode字符,包括全部表情符号。编码时,请根据使用场景选择输出格式:源码可读性优先选命名实体,需要保证任意字符准确表示时选十进制或十六进制。

可搜索的HTML实体列表——箭头、符号应有尽有

转换器下方是完整分组的 HTML实体列表,涵盖标点、箭头、货币、数学符号和希腊字母。可按名称、符号或编号搜索——输入"arrow"查找 &rarr;(→),输入"euro"查找 &euro;(€),输入"38"查找和号——点击任意单元格即可复制符号本身、命名实体、十进制或十六进制代码。

这是查找正确 HTML字符编码 的最快方式,无需记忆,也无需翻阅静态参考页。该列表覆盖完整的HTML5命名字符引用标准——2200余条——远超W3Schools约255条或FreeFormatter仅覆盖HTML4的部分实体表。如果您经常处理数学符号、印刷排版字符或扩展拉丁字符,这份列表一应俱全。

与FreeFormatter、W3Schools和MDN的对比

大多数HTML实体资源都是静态参考页面。W3Schools、MDN字符参考和FreeFormatter.com均提供可手动查询的实体列表,但都无法让您直接粘贴一段文本并一次性完成编码或解码。FreeFormatter的实体编码器是最接近的替代品,但它需要将您的文本发送至其服务器处理,每次转换都须提交表单并刷新页面,且仅涵盖HTML4实体。

本工具在同一页面上即时完成所有操作,完全在客户端运行:编码一段文本、切换为解码、再搜索实体列表——全程在同一标签页内完成,无任何网络往返。它还覆盖完整的HTML5命名字符引用集,而非仅限于HTML4,这对于包含印刷符号、箭头或数学符号的现代内容尤为重要。由于所有操作均在本地运行,您可以安全地编码私密内容——内部文档、邮件模板、未发布文案——无需担心数据流向第三方服务器。

隐私安全、即时响应、完全免费——支持离线使用

每一次转换——编码、解码或从实体列表复制——均通过JavaScript在浏览器本地完成,即使是机密标记也不会离开您的设备。没有服务器,无需登录,也没有频率限制。无论网速快慢,还是首次加载后完全断网,工具均可正常使用。

相比之下,FreeFormatter.com或在线HTML验证工具每次转换都需要发送网络请求。对于处理客户项目或内部工具的开发者而言,本地编码意味着您的标记内容绝不会触达第三方服务器。将本工具收藏为常用的 HTML实体转换器 和参考工具——无论是转义HTML、查询字符编码,还是解码来自源文件或数据库转储的已编码标记,都能高效完成。

Frequently asked questions

HTML实体是什么?

HTML实体是代表特定字符的简短代码,这些字符要么在HTML中属于保留字符,要么难以直接输入。每个实体以和号(&)开头,以分号(;)结尾——例如 &amp; 代表和号(&),&lt; 代表小于号(<),&copy; 代表版权符号(©)。实体能让字符以字面形式显示,而不被浏览器解析为标记,同时确保符号在页面字符编码不支持该字符时也能正确渲染。在手写HTML或对Web应用中的用户输入进行过滤时,您会频繁用到它们。

如何将文本编码为HTML实体?

将文本粘贴到左侧输入框,确保模式为"编码"。选择需要转义的字符范围——仅保留字符(< > & " ')、保留字符加所有非ASCII字符,或全部字符——以及输出格式为命名、十进制还是十六进制代码。例如,选择命名实体选项后,"鱼 & 薯条 <3"会变为"鱼 &amp; 薯条 &lt;3"。结果即时显示在右侧。点击复制后,可直接粘贴到您的HTML中。整个过程在浏览器内完成——无需上传文件,无需账号,编码内容的长度也没有任何限制。

如何将HTML实体解码还原为文本?

将模式切换为"解码",把已编码的HTML粘贴到左侧输入框,可读文本会即时显示在右侧。工具支持命名、十进制和十六进制实体,例如 &lt;div&gt; 张三 &amp; 李四 &#169; 会解码为 <div> 张三 & 李四 ©。点击"互换"按钮可交换两个输入框,方便对结果重新编码。解码器可处理同一字符串中混合的实体类型——命名、十进制和十六进制可同时出现,各自正确解码。FreeFormatter.com的实体解码器每次转换都需要提交表单并刷新页面,而本工具在您输入时实时更新。

&nbsp;、&amp;、&lt; 和 &gt; 分别是什么?

这是四个最常用的HTML实体。&amp; 是和号(&),&lt; 是小于号(<),&gt; 是大于号(>),&nbsp; 是不换行空格——这种空格能防止浏览器在此处换行或将连续空格合并,例如在数值与单位之间使用 10&nbsp;kg,确保它们不会被分在两行。在转义其他字符之前,必须先将 & 转义为 &amp;,否则 &amp; 本身可能被误读为新实体的起始,导致双重编码问题。

命名实体、十进制实体和十六进制实体有什么区别?

它们是表示同一字符的三种方式。命名实体使用易记的关键词(&amp;);十进制数字实体使用字符Unicode码点的十进制表示(&#38;);十六进制实体使用十六进制表示(&#x26;)。三种方式均输出和号。命名实体可读性最好,但只有约2000个字符拥有命名实体,因此数字实体是其余所有字符的备用方案——包括表情符号,例如笑脸😀对应 &#128512;。若拿不准,命名实体的可读性最佳。HTML5标准相比HTML4大幅扩充了命名实体列表;本工具涵盖完整的HTML5命名字符引用集,超过2200条。

HTML中哪些字符必须转义?

页面内容中有三个字符具有特殊含义,必须始终转义:&(&amp;)、<(&lt;)和 >(&gt;)。在属性值内还应转义 "(&quot;)和 '(&#39;)。务必先转义和号,否则 &amp; 本身可能被误读为实体起始符而遭到双重转义。编码模式的"仅保留字符"选项恰好处理这五个字符,其余文本保持不变——非常适合对表单输入或模板输出进行过滤,避免对无需转义的字符进行过度编码。

箭头或特殊符号的HTML实体代码是什么?

常用箭头实体有 &larr;(←)、&rarr;(→)、&uarr;(↑)、&darr;(↓)和 &harr;(↔),双线版本为 &lArr;、&rArr; 和 &hArr;(⇐ ⇒ ⇔)。对于其他符号,请使用下方的可搜索列表——输入"arrow"、"heart"或"euro",然后点击命名、十进制或十六进制代码进行复制。完整列表涵盖标点、数学符号、希腊字母、货币符号(包括人民币¥、欧元€等)及数百种特殊字符,已更新至HTML5命名字符引用标准。W3Schools仅列出约255个实体,本工具超过2200条。

如何在JavaScript中解码HTML实体?

经典的浏览器技巧是利用DOM自动解码:创建一个独立的textarea元素,将实体字符串赋值给其innerHTML,再读取其value。例如:const el = document.createElement('textarea'); el.innerHTML = '&lt;b&gt; &amp; &#169;'; 此时 el.value 返回 '<b> & ©'。原生JavaScript没有内置的 decodeHTMLEntities() 方法,因此这种DOM方式——或将匹配到的实体标记逐一传入textarea处理的小工具函数——是标准做法。本工具正是采用这种方式,因此即使面对不受信任的标记也能安全使用,不存在XSS风险。

为什么我的页面上显示 &amp; 而不是 &?

这是双重编码问题。文本被转义了两次:第一次将 & 变为 &amp;,第二次又将 &amp; 中的 & 变为 &amp;amp;,通常是因为框架对已转义的输出再次进行了自动转义。这在PHP CMS和某些默认转义所有输出的模板引擎中很常见——Twig、Smarty以及旧版WordPress钩子均存在此行为。将该值粘贴到本工具的解码模式中即可确认是否为双重编码,然后确保您的模板将该值标记为安全,或仅在最终输出点进行一次转义。

如何在HTML中添加©、™或破折号?

版权符号使用 &copy;(©),注册商标使用 &reg;(®),商标符号使用 &trade;(™),破折号(—)使用 &mdash;。半破折号(–)使用 &ndash;,省略号(…)使用 &hellip;。在UTF-8页面上也可以直接粘贴符号本身,但命名实体语义明确,在编码切换时也不会丢失。对于现在几乎普遍采用UTF-8的网页,直接粘贴©完全没问题。不过,命名实体在HTML邮件中是最安全的选择,因为Outlook、Gmail和Apple Mail等邮件客户端对编码的处理方式各有差异。

不换行空格的HTML实体是什么?

不换行空格的实体是 &nbsp;(数字形式为 &#160; 或 &#xA0;)。不换行空格可将两个词、或一个数值与其单位保持在同一行,并防止浏览器合并连续空格——例如 张先生&nbsp;您好 或 5&nbsp;km。但请勿将其滥用于页面布局;间距应使用CSS的margin或padding实现。一个常见错误是用多个 &nbsp; 来缩进文字或制作列表对齐——这是不良实践,在页面缩放或屏幕阅读器渲染时会出问题,屏幕阅读器会对每个 &nbsp; 朗读"不换行空格"。

HTML实体区分大小写吗?

是的,命名实体区分大小写。&amp; 有效,但 &Amp; 或 &AMP; 可能无效;&Sigma;(Σ)和 &sigma;(σ)是完全不同的两个字符。数字实体仅在十六进制实体的可选前缀x上不区分大小写——&#xA9; 和 &#xa9; 均输出©。若拿不准,请直接从本工具的参考列表复制准确代码,而非凭记忆手动输入。命名实体大小写有误时,会直接显示原始代码而非对应符号,这是手写HTML模板中常见的错误来源。

本工具与FreeFormatter和W3Schools实体表相比有何优势?

FreeFormatter.com和W3Schools均提供静态HTML实体参考表,但只能查询代码,无法对自己的文本进行编码或解码。FreeFormatter的实体编码器是最接近的替代品,但它需要将文本发送至其服务器处理,每次转换须提交表单并刷新页面,且实体列表仅涵盖HTML4命名实体。W3Schools约显示255个命名实体。本工具覆盖完整的HTML5命名字符引用集——超过2200条——并将可搜索的参考列表与实时编码器和解码器集于一页,在您输入时即时更新,无需任何额外操作。

本工具支持手机端使用吗(iPhone、Android)?

支持。编码器、解码器和实体列表均可在手机浏览器上完整使用,包括Android上的Chrome和iPhone上的Safari。页面布局会自适应小屏幕,两个输入框将垂直堆叠显示。手机端使用小技巧:若实体列表中的一键复制未立即响应,可长按单元格触发浏览器的复制选项。无需下载任何应用——本工具在任何现代手机浏览器中均以标准网页形式运行。任何设备均无需注册、无需账号、没有使用次数限制,首次加载后甚至支持离线使用。

Related tools

查看全部工具