> <html> | &entity; | © <
// HTMLエンティティ — HTMLで安全に表示するために特殊文字をエンコード
XSS対策
特殊文字をエンコードすることで、クロスサイトスクリプティング(XSS)攻撃を防ぎます。
すべての形式に対応
名前付き・10進数・16進数のエンティティ形式をサポートします。
Unicode完全対応
絵文字や記号を含むあらゆるUnicode文字をエンコードできます。
>> 技術情報
HTMLエンティティの仕組み:
HTMLエンティティを使うと、HTMLで特別な意味を持つ予約文字を安全に表示できます。エンティティは & で始まり ; で終わり、名前付き(<)、数値(<)、16進(<)のいずれかの形式になります。
例:
< → < > → > & → & " → " © → ©
HTMLエンティティを使う理由:
- >HTMLコードスニペットを表示する
- >XSS攻撃を防止する
- >特殊文字を正しく表示する
- >メールテンプレートを安全にする
- >RSSなどのテキスト形式との互換性を高める
>> よくある質問
HTMLエンティティとは何ですか?
HTMLエンティティは、HTML内の予約文字を表すための特別なコードです。これを使うことで、本来はHTMLコードとして解釈されてしまう < や >、&、引用符などの文字を安全に表示できます。
どのような場合にHTMLエンティティを使うべきですか?
ユーザー生成コンテンツを表示する場合、HTMLコードの例をページ上に表示する場合、XSS攻撃を防ぎたい場合、または特殊文字を異なるブラウザや環境で正しく表示させたい場合にHTMLエンティティを使用します。
名前付きエンティティと数値エンティティの違いは?
名前付きエンティティは覚えやすい名前を使います(例: < は < を表す)、数値エンティティは10進コード(<)、16進エンティティは16進コード(<)を使います。どれも同じ文字を表しますが、名前付きエンティティの方が読みやすいことが多いです。
すべての特殊文字をエンコードする必要がありますか?
最低限、HTMLコンテンツ内では <、>、&、"、' をエンコードすべきです。属性値では、空白やその他の特殊文字もエンコードすることをおすすめします。最大限の安全性を確保したい場合は、すべての非ASCII文字をエンコードします。