HTML 实体编解码

HTML 特殊字符的转义与还原

Ctrl+Enter 执行 · Ctrl+K 清空

输入

13

输出

字符数:0|行数:0

使用说明

输入 HTML 代码点击「编码」转为 HTML 实体;输入实体编码点击「解码」还原。

关于HTML 实体编解码

HTML 实体编码是将 HTML 中的特殊字符(如 <、>、&、"、')转换为对应的实体引用(如 &lt;、&gt;、&amp;、&quot;、&#39;)的过程,主要用于两个目的:一是确保用户输入的内容在网页上正确显示而不会被解析为 HTML 标签,二是防御 XSS(跨站脚本)攻击的核心手段之一。

当网站需要把用户提交的文本(如评论、昵称、文章内容)展示在页面上时,必须对内容进行 HTML 转义,否则用户输入的 <script>alert(1)</script> 会被浏览器当作脚本执行,造成 XSS 漏洞。同样地,在博客、文档站点中展示代码片段时,也需要先把代码中的 < > 等字符转义,避免被浏览器误解析。

本 HTML 实体编解码工具帮助开发者快速在原文与 HTML 实体之间双向转换,适合在编写博客、调试富文本编辑器、安全审计、生成 HTML 模板等场景下使用。所有处理在浏览器本地完成,数据不离开您的设备。

核心特性

核心字符全覆盖

自动转义 <、>、&、"、' 等 HTML 关键字符,防御 XSS 注入风险。

安全转义机制

使用浏览器原生 textContent/innerHTML 机制进行转义,遵循 HTML5 规范,结果稳定可靠。

双向即时转换

一键在原文与 HTML 实体之间切换,方便对比与验证。

本地处理无上传

所有编解码在浏览器内完成,包含敏感信息的内容也可安全处理。

使用场景

1

博客文章展示代码

在博客或文档中嵌入 HTML 代码示例时,必须先转义 < > 等字符,否则代码会被浏览器当作 HTML 解析而无法显示。

2

防御 XSS 攻击

将用户提交的评论、昵称、个人简介等内容进行 HTML 转义后再写入页面,防止恶意脚本注入执行。

3

调试富文本编辑器

富文本编辑器内部常以 HTML 实体形式存储特殊字符,使用本工具可查看与还原其内部表示。

4

生成 HTML 邮件模板

编写 HTML 邮件时,正文中的特殊符号需要转义以兼容各邮件客户端的渲染差异。

常见问题

HTML 转义能完全防止 XSS 吗?

HTML 实体编码是防御 XSS 的关键措施,但仅适用于 HTML 上下文。如果数据被插入到 JavaScript、URL、CSS 等上下文,需要使用对应的转义方式(如 JavaScript 字符串转义、URL 编码等)。

应该转义哪些字符?

OWASP 推荐转义以下字符:< → &lt;、> → &gt;、& → &amp;、" → &quot;、' → &#x27;、/ → &#x2F;。本工具覆盖了前 5 个最关键的字符,足以防御绝大多数 XSS 攻击。

为什么我的 HTML 实体解码后还是显示原样?

可能是因为浏览器已经把实体解析为字符后又重新显示为实体形式。请使用本工具的"解码"功能明确地将实体还原为原始字符,再复制使用。

HTML 实体与 URL 编码有什么区别?

HTML 实体用于在 HTML 文档中表示特殊字符(如 &lt;),URL 编码用于在 URL 中表示特殊字符(如 %3C)。两者应用场景不同,不能混用。