HTML 实体转换
Web 工具在线编码或解码 HTML 实体,将 < > & " 等特殊字符与 & < > 等命名实体互相转换,防止用户输入被浏览器当作标签执行,适用于富文本渲染、评论过滤、模板转义与防 XSS 安全输出等前端开发场景。
关于 HTML 实体转换
HTML 实体编码用于把 <、>、&、" 等具有语法含义的字符转成 <、>、&、" 这样的安全写法,避免浏览器把它们当作标签或属性解析,也能让 © 、€ 等特殊符号在任意编码下稳定显示。本工具支持命名实体、十进制(©)与十六进制(©)三种编码形式的相互转换,并能选择只编码必要字符还是全部非 ASCII 字符。整个转换在你的浏览器内完成,输入的文本不会离开本机。 建议在日常开发中收藏本工具,遇到相关 Web 开发需求时即可快速打开使用。所有处理均在浏览器本地完成,无需安装任何软件,它适合在输出用户内容、生成邮件 HTML 或处理含特殊符号的文本时做好转义,防止 XSS 与解析错乱。整个转换在本地完成,输入文本不会离开本机,适合在模板渲染前做安全编码。
使用方法
- 打开 HTML 实体转换 工具页面
- 根据需求输入或粘贴数据到输入区域
- 查看实时处理结果,使用复制按钮获取输出
使用场景
- 防 XSS 转义 — 把用户输入中的尖括号与引号转为实体,再插入页面,阻断脚本注入。
- 代码展示 — 在博客里展示 HTML 源码时编码标签,让浏览器原样显示而不渲染。
- 邮件模板 — 将版权符、货币符等转为实体,保证不同邮件客户端下显示一致。
- 解码抓取内容 — 把爬虫抓到的含 &、' 的文本还原成可读的原始字符。
- 属性值清理 — 为写入 title、alt 等属性的文本编码双引号,避免提前闭合属性。
常见问题
命名实体和数字实体有什么区别?
命名实体如 © 可读性好但依赖 HTML 规范定义的名称表;数字实体 © 和 © 直接引用 Unicode 码点,兼容性更广,XML 场景下更安全。
只编码五个特殊字符够吗?
在 HTML 正文中通常只需编码 & < >,属性值里再加上对应的引号即可;但若页面声明的编码不确定,把全部非 ASCII 字符也编码会更稳妥。
转义后还能安全防住 XSS 吗?
实体编码能阻止文本被当作标签,但不同上下文(如 JavaScript、URL、CSS)需要各自的转义方式,单靠 HTML 实体并不足以覆盖所有注入面。
为什么 解码后看起来像空格却复制不出来?
是不换行空格(U+00A0),与普通空格(U+0020)码点不同,肉眼相似但在搜索、正则匹配时会被区别对待。
能批量处理整段 HTML 吗?
可以,直接粘贴整段文本即可。若你的目标是把 HTML 转成纯文本,建议改用专门的 HTML 转文本类工具,本工具专注字符级实体编解码。
有浏览器兼容性要求吗?
本工具兼容所有现代浏览器(Chrome、Firefox、Edge、Safari),无需安装任何插件或扩展。
可以离线使用吗?
首次加载后,部分功能在离线状态下仍可使用。页面资源加载后,核心逻辑完全在浏览器本地运行,不依赖网络。
HTML 实体编码有什么用?
把 <、>、&、引号等保留字符转成 < > & 形式,可避免被浏览器当作标签解析,保证特殊字符在页面上原样显示。
什么时候需要把字符转成 HTML 实体?
在展示代码片段、用户输入内容或含保留字符的文本时必须编码,否则可能破坏布局甚至引入 XSS;解码则用于还原原始字符。
What is HTML entity encoding for?
It turns reserved characters like <, >, & and quotes into < > & so the browser shows them literally instead of parsing them as tags.
When should I encode characters as HTML entities?
Encode whenever you display code snippets, user input or text with reserved characters — otherwise layout breaks or XSS opens up; decode to restore the original text.
评论与讨论
评论仅保存在你的浏览器本地,切换设备后不可见。配置 Giscus 后可支持云端评论。