HTML 转义
在原始 HTML 与实体编码文本之间转换——100% 在浏览器中完成,无需上传。
输入
输出
什么是 HTML 转义?
HTML 转义(又称实体编码)是将 HTML 中具有特殊含义的字符——即 &、<、>、" 和 '——替换为对应的字符实体引用的过程。例如,小于号 < 变成 <,& 变成 &。转义使这些字符能作为字面文本显示在网页上,而不是被解释为 HTML 标记。
HTML 规范定义了命名实体(如 &、<、>、" 和 '),以及数字字符引用(如 <)表示相同字符。每当用户生成的内容、代码片段或包含尖括号的数据插入 HTML 文档时,转义都是必不可少的,因为未转义的 < 可能开始一个不需要的标签,破坏页面布局或引入 XSS 漏洞。
何时需要转义 HTML
当可能包含特殊字符的文本被插入 HTML 上下文时,就需要 HTML 转义。常见场景包括:
- 显示代码片段。 在教程页面上将
<div>显示为字面文本需要转义尖括号。 - 用户生成内容。 评论、论坛帖子和聊天消息在渲染前必须转义,以防止 XSS 攻击。
- 模板渲染。 服务器端和客户端模板引擎默认转义插值变量以保持输出安全。
- HTML 中的 JSON。 在
<script>标签内嵌入 JSON 需要转义</以避免脚本提前终止。 - 属性值。 放在
class="…"或data-*属性内的值必须转义引号以保持有效。 - 邮件模板。 HTML 邮件必须转义 URL 和追踪参数中的 & 以获得最大的客户端兼容性。
忘记转义是跨站脚本(XSS)漏洞最常见的原因之一,因此转义应为默认操作,反转义为例外。
转义与反转义
转义将原始字符转换为实体引用,反转义(解码)则反向执行该过程。本工具通过模式选择器支持两个方向。选择"转义"时,& 变成 &,< 变成 <。选择"反转义"时,实体引用被转换回原始字符。
注意,& 必须始终最先转义(或最后反转义),以避免双重编码。本工具自动遵循该顺序。处理的五个字符为:& → &、< → <、> → >、" → "、' → '。
常见的 HTML 实体
下表列出了日常 HTML 工作中最常遇到的实体。
| 字符 | 实体 | 说明 |
|---|---|---|
| & | & | 必须最先转义;所有实体的起始 |
| < | < | 开始标签;文本内容中需转义 |
| > | > | 结束标签;文本内容中需转义 |
| " | " | 双引号属性中需转义 |
| ' | ' | 单引号属性中需转义 |
| 不间断空格 | | 防止换行和折叠 |
| © | © | 版权符号 |
| → | → | 右箭头 |
数字引用如 ’(右单引号)和 …(水平省略号)也是有效的,通常由富文本编辑器输出。
如何转义或反转义 HTML
使用本工具处理文本只需一秒,完全在浏览器内完成。无需上传、无需注册、无需安装。请按以下步骤操作:
- 选择模式。 选择"转义"将特殊字符编码为实体,或选择"反转义"将实体解码回字符。
- 粘贴文本。 在输入框中输入或粘贴要转换的 HTML 或文本。
- 点击"处理"。 工具应用所选转换,实时将结果写入输出框。
- 复制结果。 点击"复制到剪贴板"复制转换后的文本,然后粘贴到你的 HTML、模板或代码中。
由于每一步都使用 JavaScript 在浏览器中本地运行,你的文本永远不会上传到服务器。这使得转换完全私密、快速,适合处理用户数据、令牌和源代码等敏感内容。
这个 HTML 转义工具免费吗?
是的,完全免费,无需注册、无水印、无限制。
它转义哪些字符?
五个基本字符:& < > " 和 ',映射到 & < > " '。
也能反转义实体吗?
能。将模式选择器切换到"反转义",实体引用将被转换回字符。
能处理数字引用吗?
反转义模式可处理常见命名实体和典型编辑器产生的数字引用。
我的输入会被上传吗?
不会。所有处理都在本地完成,文本永远不会离开你的浏览器。