HTML 实体让你能显示保留字符、符号和特殊字形,否则这些字符会被浏览器解释为 HTML 代码。本完整 HTML 特殊字符与实体参考表提供可直接复制的表格,涵盖必备字符、货币符号、数学运算符、箭头、希腊字母和排版符号。
使用我们的 HTML 转义/反转义工具即时编码和解码 HTML 实体 →
什么是 HTML 实体?
HTML 实体是以 & 开头、以 ; 结尾的字符串,在浏览器中渲染为单个字符。实体的存在是因为某些字符在 HTML 中是保留的(如 < 和 >),或者无法通过标准键盘输入(如 • 或 ©)。
每个实体可以用三种形式书写:
- 命名实体 — 例如
&(可读性好,但并非每个字符都有名称) - 十进制数字实体 — 例如
&(适用于任何 Unicode 码位) - 十六进制数字实体 — 例如
&(与十进制覆盖范围相同,大码位时更短)
必备字符
这六个字符是最常用的 HTML 实体。前五个至关重要,因为它们在 HTML 语法中有特殊含义。
| 字符 | 命名实体 | 十进制 | 十六进制 | 说明 |
|---|---|---|---|---|
| < | < | < | < | Less-than sign (opens HTML tags) |
| > | > | > | > | Greater-than sign (closes HTML tags) |
| & | & | & | & | Ampersand (starts entity references) |
| " | " | " | " | Double quotation mark (attribute delimiter) |
| ' | ' | ' | ' | Apostrophe / single quote |
| (space) | |   |   | Non-breaking space |
货币符号
国际化网页开发中常用的货币符号综合表。使用这些实体可确保在任何字体和编码下正确渲染。
| 字符 | 命名实体 | 十进制 | 十六进制 | 说明 |
|---|---|---|---|---|
| $ | $ | $ | $ | Dollar sign |
| € | € | € | € | Euro sign |
| £ | £ | £ | £ | Pound sterling |
| ¥ | ¥ | ¥ | ¥ | Yen / Yuan sign |
| ₹ | ₹ | ₹ | ₹ | Indian Rupee |
| ₾ | ₾ | ₾ | ₾ | Georgian Lari |
| ₽ | ₽ | ₽ | ₽ | Russian Ruble |
| ₺ | ₺ | ₺ | ₺ | Turkish Lira |
| ₱ | ₱ | ₱ | ₱ | Philippine Peso |
| ₫ | ₫ | ₫ | ₫ | Vietnamese Dong |
| ₩ | ₩ | ₩ | ₩ | Korean Won |
| ₪ | ₪ | ₪ | ₪ | Israeli New Sheqel |
| ¢ | ¢ | ¢ | ¢ | Cent sign |
| ¤ | ¤ | ¤ | ¤ | General currency sign |
| ₿ | ₿ | ₿ | ₿ | Bitcoin sign |
| ₳ | ₳ | ₳ | ₳ | Austral sign |
| ƒ | ƒ | ƒ | ƒ | Florin / Guilder sign |
| ₲ | ₲ | ₲ | ₲ | Guarani sign |
数学符号和运算符
文档、科技内容和界面标签中常用的数学符号。
| 字符 | 命名实体 | 十进制 | 十六进制 | 说明 |
|---|---|---|---|---|
| ± | ± | ± | ± | Plus-minus sign |
| × | × | × | × | Multiplication sign |
| ÷ | ÷ | ÷ | ÷ | Division sign |
| = | = | = | = | Equals sign |
| ≠ | ≠ | ≠ | ≠ | Not equal to |
| < | < | < | < | Less than |
| > | > | > | > | Greater than |
| ≤ | ≤ | ≤ | ≤ | Less than or equal to |
| ≥ | ≥ | ≦ | ≥ | Greater than or equal to |
| ≈ | ≈ | ≈ | ≈ | Approximately equal |
| ∞ | ∞ | ∞ | ∞ | Infinity |
| √ | √ | √ | √ | Square root |
| ∑ | ∑ | ∑ | ∑ | Summation (sigma) |
| ∏ | ∏ | ∏ | ∏ | Product (pi) |
| ∫ | ∫ | ∫ | ∫ | Integral |
| ∂ | ∂ | ∂ | ∂ | Partial differential |
| ∇ | ∇ | ∇ | ∇ | Nabla / gradient |
| ‰ | ‰ | ‰ | ‰ | Per mille (per thousand) |
| ° | ° | ° | ° | Degree sign |
| µ | µ | µ | µ | Micro sign |
| ² | ² | ² | ² | Superscript two (squared) |
| ³ | ³ | ³ | ³ | Superscript three (cubed) |
| ½ | ½ | ½ | ½ | Fraction one half |
| ¼ | ¼ | ¼ | ¼ | Fraction one quarter |
| ¾ | ¾ | ¾ | ¾ | Fraction three quarters |
| ∈ | ∈ | ∈ | ∈ | Element of |
| ∉ | ∉ | ∉ | ∉ | Not an element of |
| ⊂ | ⊂ | ⊂ | ⊂ | Subset of |
| ⊃ | ⊃ | ⊃ | ⊃ | Superset of |
| ∩ | ∩ | ∩ | ∩ | Intersection |
| ∪ | ∪ | ∪ | ∪ | Union |
| ∧ | ∧ | ∧ | ∧ | Logical AND |
| ∨ | ∨ | ∨ | ∨ | Logical OR |
| ¬ | ¬ | ¬ | ¬ | Logical NOT |
| ∴ | ∴ | ∴ | ∴ | Therefore |
| ∅ | ∅ | ∅ | ∅ | Empty set |
箭头符号
用于导航、UI 指示器、流程图和装饰用途的箭头字符。
| 字符 | 命名实体 | 十进制 | 十六进制 | 说明 |
|---|---|---|---|---|
| ← | ← | ← | ← | Left arrow |
| ↑ | ↑ | ↑ | ↑ | Up arrow |
| → | → | → | → | Right arrow |
| ↓ | ↓ | ↓ | ↓ | Down arrow |
| ↔ | ↔ | ↔ | ↔ | Left-right arrow |
| ↕ | ↕ | ↕ | ↕ | Up-down arrow |
| ⇐ | ⇐ | ⇐ | ⇐ | Left double arrow |
| ⇑ | ⇑ | ⇑ | ⇑ | Up double arrow |
| ⇒ | ⇒ | ⇒ | ⇒ | Right double arrow (implies) |
| ⇓ | ⇓ | ⇓ | ⇓ | Down double arrow |
| ⇔ | ⇔ | ⇔ | ⇔ | Left-right double arrow (iff) |
| ↵ | ↵ | ↵ | ↵ | Carriage return arrow |
| ↺ | ↺ | ↺ | ↺ | Counter-clockwise arrow |
| ↻ | ↻ | ↻ | ↻ | Clockwise arrow |
| ➜ | ➜ | ➜ | ➜ | Heavy right arrow |
| ➔ | ➔ | ➔ | ➔ | Right arrow heavy head |
| ↗ | ↗ | ↗ | ↗ | North-east arrow |
| ↘ | ↘ | ↘ | ↘ | South-east arrow |
| ↙ | ↙ | ↙ | ↙ | South-west arrow |
| ↖ | ↖ | ↖ | ↖ | North-west arrow |
希腊字母
希腊字母广泛应用于数学、科学和工程文档。下表列出大写和小写形式。
| 字符 | 命名实体 | 十进制 | 十六进制 | 说明 |
|---|---|---|---|---|
| Α / α | Α / α | Α / α | Α / α | Alpha |
| Β / β | Β / β | Β / β | Β / β | Beta |
| Γ / γ | Γ / γ | Γ / γ | Γ / γ | Gamma |
| Δ / δ | Δ / δ | Δ / δ | Δ / δ | Delta |
| Ε / ε | Ε / ε | Ε / ε | Ε / ε | Epsilon |
| Ζ / ζ | Ζ / ζ | Ζ / ζ | Ζ / ζ | Zeta |
| Η / η | Η / η | Η / η | Η / η | Eta |
| Θ / θ | Θ / θ | Θ / θ | Θ / θ | Theta |
| Ι / ι | Ι / ι | Ι / ι | Ι / ι | Iota |
| Κ / κ | Κ / κ | Κ / κ | Κ / κ | Kappa |
| Λ / λ | Λ / λ | Λ / λ | Λ / λ | Lambda |
| Μ / μ | Μ / μ | Μ / μ | Μ / μ | Mu |
| Ν / ν | Ν / ν | Ν / ν | Ν / ν | Nu |
| Ξ / ξ | Ξ / ξ | Ξ / ξ | Ξ / ξ | Xi |
| Ο / ο | Ο / ο | Ο / ο | Ο / ο | Omicron |
| Π / π | Π / π | Π / π | Π / π | Pi |
| Ρ / ρ | Ρ / ρ | Ρ / ρ | Ρ / ρ | Rho |
| Σ / σ | Σ / σ | Σ / σ | Σ / σ | Sigma |
| Τ / τ | Τ / τ | Τ / τ | Τ / τ | Tau |
| Υ / υ | Υ / υ | Υ / υ | Υ / υ | Upsilon |
| Φ / φ | Φ / φ | Φ / φ | Φ / φ | Phi |
| Χ / χ | Χ / χ | Χ / χ | Χ / χ | Chi |
| Ψ / ψ | Ψ / ψ | Ψ / ψ | Ψ / ψ | Psi |
| Ω / ω | Ω / ω | Ω / ω | Ω / ω | Omega |
排版与标点符号
用于专业排版的字符,包括破折号、引号和法律符号。
| 字符 | 命名实体 | 十进制 | 十六进制 | 说明 |
|---|---|---|---|---|
| — | — | — | — | Em dash |
| – | – | – | – | En dash |
| … | … | … | … | Horizontal ellipsis |
| © | © | © | © | Copyright sign |
| ® | ® | ® | ® | Registered trademark |
| ™ | ™ | ™ | ™ | Trademark sign |
| • | • | • | • | Bullet |
| · | · | · | · | Middle dot |
| § | § | § | § | Section sign |
| ¶ | ¶ | ¶ | ¶ | Pilcrow / paragraph sign |
| † | † | † | † | Dagger |
| ‡ | ‡ | ‡ | ‡ | Double dagger |
| ‘ | ‘ | ‘ | ‘ | Left single quotation mark |
| ’ | ’ | ’ | ’ | Right single quotation mark |
| “ | “ | “ | “ | Left double quotation mark |
| ” | ” | ” | ” | Right double quotation mark |
| « | « | « | « | Left guillemet (French quote) |
| » | » | » | » | Right guillemet (French quote) |
| ‹ | ‹ | ‹ | ‹ | Single left-pointing angle quote |
| › | › | › | › | Single right-pointing angle quote |
| ª | ª | ª | ª | Feminine ordinal indicator |
| º | º | º | º | Masculine ordinal indicator |
| ¡ | ¡ | ¡ | ¡ | Inverted exclamation mark |
| ¿ | ¿ | ¿ | ¿ | Inverted question mark |
| ☐ | ☐ | ☐ | ☐ | Ballot box (unchecked) |
| ☑ | ☑ | ☑ | ☑ | Ballot box with check |
| ☒ | ☒ | ☒ | ☒ | Ballot box with X |
| ★ | ★ | ★ | ★ | Black star |
| ☆ | ☆ | ☆ | ☆ | White star |
| ♥ | ♥ | ♥ | ♥ | Black heart |
| ♦ | ♦ | ♦ | ♦ | Black diamond |
| ♣ | ♣ | ♣ | ♣ | Black club |
| ♠ | ♠ | ♠ | ♠ | Black spade |
如何使用 HTML 实体
你可以在 HTML 中互换使用这三种形式。以下是示例:
命名实体(如果可用)
<p>Copyright © 2025 My Company</p>
<!-- Renders: Copyright © 2025 My Company -->十进制数字实体
<p>Copyright © 2025 My Company</p>
<!-- Renders: Copyright © 2025 My Company -->十六进制数字实体
<p>Copyright © 2025 My Company</p>
<!-- Renders: Copyright © 2025 My Company -->以上三行渲染出相同的 © 符号。命名实体在源代码中最易读,但数字实体支持每个 Unicode 字符,包括表情符号和 CJK 字符。
最佳实践:在用户生成的内容中始终转义 <、>、& 和 " 以防止 XSS 攻击。在手写 HTML 中使用命名实体提高可读性,在自动生成的输出中使用数字实体以获得最大兼容性。
<!-- Always escape user content to prevent XSS -->
<p>User said: <script>alert('xss')</script></p>
<!-- Use entities for special typography -->
<p>Price: £19.99 — Limited offer</p>
<p>Temperature: 72°F ± 2°</p>
<p>© 2025 Company™ • All rights reserved</p>
<!-- Non-breaking spaces to keep units together -->
<p>The file is 4.5 GB in size.</p>
<p>The speed limit is 100 km/h.</p>在 JavaScript 中转义 HTML
将用户提供的文本插入 DOM 时,必须转义 HTML 特殊字符以防止跨站脚本攻击(XSS)。以下是可靠的方法:
手动字符串替换
function escapeHtml(text) {
const map = {
'&': '&',
'<': '<',
'>': '>',
'"': '"',
"'": ''',
};
return text.replace(/[&<>"']/g, (char) => map[char]);
}
// Usage
const userInput = '<script>alert("xss")</script>';
const safe = escapeHtml(userInput);
// Result: "<script>alert("xss")</script>"
document.getElementById('output').innerHTML = safe;使用 DOM(浏览器安全方式)
function escapeHtmlDOM(text) {
const div = document.createElement('div');
div.textContent = text; // textContent auto-escapes
return div.innerHTML; // returns escaped HTML
}
// Usage
const escaped = escapeHtmlDOM('<img onerror="alert(1)">');
// Result: "<img onerror="alert(1)">"将实体解码回文本
function decodeHtmlEntities(html) {
const textarea = document.createElement('textarea');
textarea.innerHTML = html;
return textarea.value;
}
// Usage
const decoded = decodeHtmlEntities('<p>Hello & welcome</p>');
// Result: "<p>Hello & welcome</p>"在 React / JSX 中
React 默认会转义文本内容。只有使用 dangerouslySetInnerHTML 时才需要注意:
// SAFE: React auto-escapes this
function SafeComponent({ userInput }) {
return <p>{userInput}</p>;
// <script> tags in userInput are rendered as text, not executed
}
// DANGEROUS: Only use with sanitized HTML
import DOMPurify from 'dompurify';
function RichContent({ htmlContent }) {
const clean = DOMPurify.sanitize(htmlContent);
return <div dangerouslySetInnerHTML={{ __html: clean }} />;
}
// Node.js / Server-Side (no DOM available)
function escapeHtmlNode(text) {
return text
.replace(/&/g, '&')
.replace(/</g, '<')
.replace(/>/g, '>')
.replace(/"/g, '"')
.replace(/'/g, ''');
}经验法则:永远不要对未净化的用户输入使用 innerHTML 或 dangerouslySetInnerHTML。如果必须渲染来自外部源的 HTML,请使用 DOMPurify 等库进行净化。
常见问题
在 UTF-8 页面中,像 é 或 ñ 这样的字符需要使用 HTML 实体吗?
不需要。如果你的页面使用 <meta charset="UTF-8">(这是现代默认设置),可以直接输入带重音符号的字符。实体仅在 HTML 保留字符(< > & ")和键盘上无法输入的字符时才需要。
&nbsp; 和普通空格有什么区别?
普通空格(U+0020)会被浏览器折叠——多个空格变成一个,行可以在空格处断开。不间断空格( ,U+00A0)防止折叠并防止在该位置断行。用于保持两个词在同一行(如"100 km")或在 HTML 中添加额外间距。
可以将表情符号作为 HTML 实体使用吗?
可以。每个表情符号都有 Unicode 码位。例如,火箭表情可以写成 🚀,渲染为 🚀。不过,现代浏览器和 UTF-8 编码意味着你可以直接粘贴表情字符。
为什么我的 HTML 页面显示 &amp; 而不是 &?
这意味着文本被双重转义了。源代码包含 &amp; 而不是 &。这通常发生在服务器或模板引擎转义了已经转义过的内容时。检查你的渲染管道是否有多余的转义步骤。
HTML 实体区分大小写吗?
是的,命名实体区分大小写。&Amp; 无效,必须写成 &。类似地,Α(Α)和 α(α)是不同的字符(大写与小写希腊字母 alpha)。数字实体中的 x 前缀不区分大小写:& 和 & 都有效。
收藏此页面作为你的 HTML 实体快速参考。如需快速编码和解码,请使用下方工具。