ページを壊さずにコードを表示する
Webページで <div> を表示するにはエンコードが必要です。さもないとブラウザが本物のタグと解釈します。このツールは特殊文字をHTMLエンティティにエンコードし、エンコード済みの内容を読むために逆変換も行います。
-
テキストを貼り付け
コード、記号、アクセント——何でも。
-
エンコードかデコード
名前付き(読みやすい)か数値(普遍的)かを選択。
-
コピー
結果はHTMLにそのまま貼り付けられます。
必ず知っておくべき5つのエンティティ
| 文字 | 名前付き | 数値 |
|---|---|---|
| & | & | & |
| < | < | < |
| > | > | > |
| " | " | " |
| ' | ' | ' |
ページに挿入するあらゆる内容でこの5文字をエンコードすることが、XSS注入に対する第一の防御です。ここでのデコードは安全で、HTMLを実行することはありません。
よくある質問
名前付きと数値、どちらを選ぶ?
名前付き(&、©)は読みやすく、数値(&、©)は名前が定義されていない文字でも常に機能します。最大の互換性と稀な文字には数値の方が安全。オプションを外すとすべて数値でエンコードします。
必ずエンコードすべき文字は?
HTMLの「予約」5文字:&(&)、<(<)、>(>)、"(")、'(')。これらを忘れるとタグ注入や表示崩れの原因に。残り(アクセント、記号)はページがUTF-8なら任意です。
デコードは安全?
はい:デコードは textarea.value を使い、HTMLやスクリプトを一切実行せずにエンティティを解決します。未知のコンテンツも実行リスクなくデコードできます。
なぜ がスペースとして表示されない?
ノーブレークスペース( 、U+00A0)はスペースに見えますが別物で、改行を防ぎ、コード上でうまく結合しないことがよくあります。エンコーダーはこれを として可視化し、厄介なスペースを見つけられるようにします。