HTMLエンティティについて
HTMLエンティティは、HTMLコードとして解釈される可能性のある文字を表すためにHTMLで使用される特殊文字です。これにより、HTMLコードとして解釈される予約文字や、改行されないスペースなどの不可視文字を表示できます。
HTMLエンティティの一般的な用途
- <、>、&などの予約文字の表示
- 著作権記号(©)や商標記号(™)などの特殊文字の追加
- 異なる言語や文字体系の文字を含めること
- 数学記号や技術的な表記の追加
- 異なるブラウザやプラットフォーム間での一貫した表示の確保
HTMLエンティティの仕組み
HTMLエンティティは2つの方法で参照できます:
- 名前付きエンティティ:アンパサンドで始まりセミコロンで終わります(例:
<
for <) - 数値エンティティ:10進数または16進数の値を使用します(例:
<
or<
for <) - HTML5は一般的な文字の多くの名前付きエンティティをサポートしています
- すべてのUnicode文字は数値エンティティで表現可能です
- エンコーダーとデコーダーはプレーンテキストとHTMLエンティティ形式の間の変換を助けます
一般的なHTMLエンティティ
よく使われるHTMLエンティティの一部は以下の通りです:
<
= < (より小さい)>
= > (より大きい)&
= & (アンパサンド)"
= " (引用符)'
= ' (アポストロフィ)
= 改行されないスペース©
= © (copyright)®
= ® (登録商標)
セキュリティ上の考慮事項
HTMLエンティティの適切な使用はウェブセキュリティに重要です。特殊文字をエンコードすることで、クロスサイトスクリプティング(XSS)攻撃の特定の種類を防ぐことができます。ユーザー提供データを含む可能性のある動的コンテンツは常にエンコードして、HTMLで安全に表示されるようにしてください。
Examples
プレーンテキスト | HTMLエンティティ |
---|---|
<div> | <div> |
Smith & Co | Smith & Co |
8 > 3 | 8 > 3 |