このツールについて

この HTML エンコーダーは、< > や & など HTML で特別な意味を持つ文字を &lt; や &amp; のようなエンティティに変換し、エンティティを元のテキストに戻します。

使い方

  1. 入力欄にテキストまたは HTML を貼り付けます。
  2. 「エンコード」でエスケープし、「デコード」でエンティティを文字に戻します。
  3. 「コピー」で出力をコピーします。

知っておきたいこと

  • エンコードでは & を &amp;、< を &lt;、> を &gt; にエスケープし、ブラウザがテキストをマークアップとして扱わないようにします。
  • デコードは名前付きエンティティ(&copy; など)と数値エンティティ(&#169; や &#xA9; など)の両方に対応しています。
  • ユーザー入力を HTML に挿入する前にエスケープすることは、クロスサイトスクリプティング(XSS)に対する基本的な防御策です。
  • 属性値の中の文字はクォートのエスケープも必要ですが、通常はテンプレートエンジンが処理してくれます。

すべてブラウザ内で動作します。入力した内容がアップロード・保存されることはありません。

よくある質問

HTML をエンコードする必要があるのはどんなときですか?

コードサンプルやユーザーのコメントなど、< > や & を含む可能性のあるテキストを Web ページに表示するときです。エンコードすれば、HTML として解釈されずにテキストとして表示されます。

エンコードで XSS を防げますか?

HTML に挿入する前にテキストをエスケープすることは XSS 対策の重要な要素ですが、属性、URL、JavaScript の各コンテキストにも適切なエスケープが必要です。

&amp; と &#38; の違いは何ですか?

どちらもアンパサンドを表します。&amp; は名前付きエンティティ、&#38; はその数値コードで、ブラウザは同じものとして扱います。

内容はアップロードされますか?

いいえ。エンコードとデコードはブラウザ内で行われます。