广告
输入
输出
广告

常见问题

什么是 HTML 实体?

HTML 实体是表示 HTML 中具有特殊含义的字符或难以输入的字符的特殊文本序列。它们以 & 符号开头,以分号 (;) 结尾。例如,&amp; 渲染为 &,&lt; 渲染为 <,&gt; 渲染为 >。命名实体如 &copy; 渲染为 ©,&nbsp; 产生不间断空格。数字实体使用十进制(&#169;)或十六进制(&#xA9;)码位引用。

为什么要对 HTML 进行编码?

HTML 编码对于安全性和正确渲染至关重要。在网页上显示用户提供的内容时,必须对特殊字符进行编码,以防止跨站脚本(XSS)攻击。如果用户提交 <script>alert("已被入侵")</script> 且你未经编码就显示,浏览器会执行该脚本。将其编码为 &lt;script&gt; 后,它将作为可见文本显示。此外,编码可确保文本内容中的 < 和 > 不会被误认为 HTML 标签。

命名 HTML 实体与数字 HTML 实体有什么区别?

命名实体使用以 & 开头、以 ; 结尾的描述性名称,例如 &amp; 表示 & 字符,&copy; 表示版权符号。它们可读性强,但 HTML 规范中只有有限的字符拥有官方命名实体。数字实体适用于任何 Unicode 字符:十进制实体使用 &#NNNN; 的形式(NNNN 为十进制 Unicode 码位),十六进制实体使用 &#xHHHH;(HHHH 为十六进制码位)。例如,欧元符号 € 可以写成 &#8364; 或 &#x20AC;。