点击任意实体卡片可将其插入到左侧输入框。
HTML 实体(HTML Entity)是用于表示 HTML 特殊字符的特殊序列,以 & 开头,; 结尾。
| 类型 | 格式 | 示例(<) | 说明 |
|---|---|---|---|
| 命名实体 | &name; | < | 可读性好,仅限预定义实体 |
| 十进制数字实体 | &#decimal; | < | 支持所有 Unicode 字符 |
| 十六进制数字实体 | &#xHex; | < | 支持所有 Unicode 字符,常用于 CSS |
| 字符 | 命名实体 | 十进制 | 原因 |
|---|---|---|---|
| < | < | < | HTML 标签开始符,必须转义 |
| > | > | > | HTML 标签结束符 |
| & | & | & | 实体引用开始符,必须首先转义 |
| " | " | " | 属性值使用双引号时需转义 |
| ' | ' | ' | 属性值使用单引号时需转义 |
HTML 实体编码是防御跨站脚本攻击(XSS)的基本手段。将用户输入中的特殊字符转义后再插入 HTML,可防止恶意脚本执行。
| 场景 | 转义字符 |
|---|---|
| HTML 内容(元素文本) | & < > |
| HTML 属性值(双引号包围) | & < > " |
| HTML 属性值(单引号包围) | & < > ' |
| JavaScript 字符串 | 使用 JSON.stringify 或专门的 JS 转义 |