HTMLエンコーダー/デコーダー
この HTML エンコーダーは、< > や & など HTML で特別な意味を持つ文字を < や & のようなエンティティに変換し、エンティティを元のテキストに戻します。
このツールについて
この HTML エンコーダーは、< > や & など HTML で特別な意味を持つ文字を < や & のようなエンティティに変換し、エンティティを元のテキストに戻します。
使い方
- 入力欄にテキストまたは HTML を貼り付けます。
- 「エンコード」でエスケープし、「デコード」でエンティティを文字に戻します。
- 「コピー」で出力をコピーします。
知っておきたいこと
- エンコードでは & を &、< を <、> を > にエスケープし、ブラウザがテキストをマークアップとして扱わないようにします。
- デコードは名前付きエンティティ(© など)と数値エンティティ(© や © など)の両方に対応しています。
- ユーザー入力を HTML に挿入する前にエスケープすることは、クロスサイトスクリプティング(XSS)に対する基本的な防御策です。
- 属性値の中の文字はクォートのエスケープも必要ですが、通常はテンプレートエンジンが処理してくれます。
すべてブラウザ内で動作します。入力した内容がアップロード・保存されることはありません。
よくある質問
HTML をエンコードする必要があるのはどんなときですか?
コードサンプルやユーザーのコメントなど、< > や & を含む可能性のあるテキストを Web ページに表示するときです。エンコードすれば、HTML として解釈されずにテキストとして表示されます。
エンコードで XSS を防げますか?
HTML に挿入する前にテキストをエスケープすることは XSS 対策の重要な要素ですが、属性、URL、JavaScript の各コンテキストにも適切なエスケープが必要です。
& と & の違いは何ですか?
どちらもアンパサンドを表します。& は名前付きエンティティ、& はその数値コードで、ブラウザは同じものとして扱います。
内容はアップロードされますか?
いいえ。エンコードとデコードはブラウザ内で行われます。