名前付き文字参照
人間が読みやすい名前を使うHTMLエンティティ:© → ©、— → —。HTML5は2,231個の名前付き参照を定義しており、大文字・小文字を区別します。
What Are Named Character References?
Named character references (also called named HTML entities) are predefined shorthand sequences that represent specific Unicode characters in HTML. They follow the pattern &name; where name is a case-sensitive keyword registered in the HTML specification. Examples include & for the ampersand character, < for the less-than sign, and © for the copyright symbol ©.
The HTML5 specification defines 2,231 named references, covering characters across many Unicode blocks: Latin letters with diacritics, Greek and Cyrillic letters, mathematical symbols, arrows, currency signs, playing card suits, and more.
History and Design
Named references were introduced early in HTML to help authors write documents using only ASCII source files while displaying richer character sets. Before UTF-8 became universal, a document might be saved in Latin-1 but still need to display Greek letters or typographic dashes. Named entities provided a portable solution.
HTML4 borrowed many entities from ISO character sets and SGML. HTML5 dramatically expanded the list by adding all characters from MathML and a large portion of common Unicode symbols.
The Five Essential Entities
Five named references are special because they escape HTML syntax characters:
< → < (less-than, starts tags)
> → > (greater-than, ends tags)
& → & (ampersand, starts entities)
" → " (double quote, used in attributes)
' → ' (apostrophe, HTML5 only; use ' for HTML4)
Forgetting to escape these — especially & and < in user-generated content — is the root cause of many XSS vulnerabilities.
Commonly Used Named References
<!-- Typography -->
→ non-breaking space (U+00A0)
— → — (em dash, U+2014)
– → – (en dash, U+2013)
“ → " (left double quote)
” → " (right double quote)
‘ → ' (left single quote)
’ → ' (right single quote, apostrophe)
… → … (ellipsis)
<!-- Currency -->
€ → € (U+20AC)
£ → £ (U+00A3)
¥ → ¥ (U+00A5)
¢ → ¢ (U+00A2)
<!-- Math and science -->
× → × (U+00D7)
÷ → ÷ (U+00F7)
± → ± (U+00B1)
∞ → ∞ (U+221E)
∑ → ∑ (U+2211)
√ → √ (U+221A)
π → π (U+03C0)
<!-- Arrows -->
← → ← (U+2190)
→ → → (U+2192)
↑ → ↑ (U+2191)
↓ → ↓ (U+2193)
Case Sensitivity
Named references are case-sensitive. © works, © and &Copy; do not. A few names have uppercase variants that mean something different: Α is Α (Greek capital Alpha), while α is α (Greek small alpha).
Verifying Named References
// Decode a named entity by injecting into DOM
function decodeEntity(entity) {
const el = document.createElement("textarea");
el.innerHTML = entity;
return el.value;
}
decodeEntity("—"); // "—"
decodeEntity("…"); // "…"
decodeEntity("¬aref;"); // "¬aref;" — unknown entities are left as-is
When to Use Named References Today
With UTF-8 encoding, you can paste ©, —, and ∞ directly into HTML source. Named references are mainly useful for: code samples that must remain plain ASCII, generated HTML in environments where the encoding might shift, and developer readability when the intent matters ( is clearer than a bare invisible space character).
Quick Facts
| Property | Value |
|---|---|
| Total defined in HTML5 | 2,231 named references |
| Case sensitivity | Case-sensitive (& valid, & invalid) |
| Must always escape | & < > " |
| Trailing semicolon | Required in most contexts; optional legacy exceptions exist |
| XML compatibility | Only & < > " ' are predefined in XML |
| Browser behavior | Unknown named references displayed as literal text |
関連用語
Web & HTML のその他の用語
レスポンスの文字エンコーディングを宣言するHTTPヘッダーパラメータ(Content-Type: text/html; charset=utf-8)。ドキュメント内のエンコーディング宣言より優先されます。
::beforeおよび::after疑似要素でUnicodeエスケープを使って生成コンテンツを挿入するCSSプロパティ:content: '\2713'は✓を挿入します。
CSS properties (direction, writing-mode, unicode-bidi) controlling text layout direction. Works with Unicode …
HTMLで文字をテキスト表現する方式。3つの形式:名前(&)・十進数(&)・16進数(&)。HTMLの構文と衝突する文字に必須です。
ECMAScript Internationalization API providing locale-aware string comparison (Collator), number formatting (NumberFormat), date …
Unicode ドメイン名をxn--プレフィックス付きのASCII文字列に変換するASCII互換エンコーディング。münchen.de → xn--mnchen-3ya.de。
CSS supports Unicode via escape sequences (\2713 for ✓), the content property …
XMLバージョンの数値文字参照:✓または✓。XMLには名前付きエンティティが5個(& < > " ')しかありませんが、HTML5は2,231個あります。
デフォルトの絵文字表示の代わりに、通常は異体字セレクター15(U+FE0E)を使って文字をモノクロのテキストグリフでレンダリングすること。
URLの非ASCII文字と予約文字を各バイトを%XXで置き換えてエンコードします。まずUTF-8に変換し、各バイトをパーセントエンコードします:é → %C3%A9。