关于HTML 实体编解码
HTML 实体编码是将 HTML 中的特殊字符(如 <、>、&、"、')转换为对应的实体引用(如 <、>、&、"、')的过程,主要用于两个目的:一是确保用户输入的内容在网页上正确显示而不会被解析为 HTML 标签,二是防御 XSS(跨站脚本)攻击的核心手段之一。
当网站需要把用户提交的文本(如评论、昵称、文章内容)展示在页面上时,必须对内容进行 HTML 转义,否则用户输入的 <script>alert(1)</script> 会被浏览器当作脚本执行,造成 XSS 漏洞。同样地,在博客、文档站点中展示代码片段时,也需要先把代码中的 < > 等字符转义,避免被浏览器误解析。
本 HTML 实体编解码工具帮助开发者快速在原文与 HTML 实体之间双向转换,适合在编写博客、调试富文本编辑器、安全审计、生成 HTML 模板等场景下使用。所有处理在浏览器本地完成,数据不离开您的设备。
核心特性
核心字符全覆盖
自动转义 <、>、&、"、' 等 HTML 关键字符,防御 XSS 注入风险。
安全转义机制
使用浏览器原生 textContent/innerHTML 机制进行转义,遵循 HTML5 规范,结果稳定可靠。
双向即时转换
一键在原文与 HTML 实体之间切换,方便对比与验证。
本地处理无上传
所有编解码在浏览器内完成,包含敏感信息的内容也可安全处理。
使用场景
博客文章展示代码
在博客或文档中嵌入 HTML 代码示例时,必须先转义 < > 等字符,否则代码会被浏览器当作 HTML 解析而无法显示。
防御 XSS 攻击
将用户提交的评论、昵称、个人简介等内容进行 HTML 转义后再写入页面,防止恶意脚本注入执行。
调试富文本编辑器
富文本编辑器内部常以 HTML 实体形式存储特殊字符,使用本工具可查看与还原其内部表示。
生成 HTML 邮件模板
编写 HTML 邮件时,正文中的特殊符号需要转义以兼容各邮件客户端的渲染差异。
常见问题
HTML 转义能完全防止 XSS 吗?
HTML 实体编码是防御 XSS 的关键措施,但仅适用于 HTML 上下文。如果数据被插入到 JavaScript、URL、CSS 等上下文,需要使用对应的转义方式(如 JavaScript 字符串转义、URL 编码等)。
应该转义哪些字符?
OWASP 推荐转义以下字符:< → <、> → >、& → &、" → "、' → '、/ → /。本工具覆盖了前 5 个最关键的字符,足以防御绝大多数 XSS 攻击。
为什么我的 HTML 实体解码后还是显示原样?
可能是因为浏览器已经把实体解析为字符后又重新显示为实体形式。请使用本工具的"解码"功能明确地将实体还原为原始字符,再复制使用。
HTML 实体与 URL 编码有什么区别?
HTML 实体用于在 HTML 文档中表示特殊字符(如 <),URL 编码用于在 URL 中表示特殊字符(如 %3C)。两者应用场景不同,不能混用。