HTML クリーナー & サニタイザー
HTML を貼り付け、ポリシーを選び、ボタンを押すだけ。洗浄済みのマークアップに加えて、捨てられたタグと属性の明細レポートが手に入ります。どの判断も、何も貼り直さずに取り消せます。
使い方
HTML を持ち込む
貼り付ける、.html ファイルをドロップする、あるいは別のツールから移ってくる。そのまま置かれるだけで、ファイルを開いても洗浄は始まりません。
ポリシーを選ぶ
4 つのプリセットでよくある場面はカバーできます。手動パネルを開けば、タグ一覧・属性一覧・受け入れる URL スキームを自分で編集できます。
実行する
一度の走査で洗浄済みのツリーを組み立て、その途中ですべての判断を記録します。1 メガバイトのマークアップで数ミリ秒です。
確認して覆す
レポートには何がなぜ消えたかが並びます。ある行に納得できなければ「残す」を押すだけで、その一点だけ例外にして走査をやり直します。
できること
本物の許可リストポリシー
タグ、属性、URL スキームはそれぞれ独立した、あなたが操作できる一覧です。タグを塞いでも属性を放置するならサニタイズとは言えません。
明細化された削除レポート
捨てられた要素と属性が、件数・中身の見本・消えた理由とともにまとめて並びます。
どの判断も覆せる
行の「残す」を押すと、まさにその一点だけを許可してサニタイズをやり直します。元のテキストが書き換えられることはありません。
URL スキームを検査
href、src、formaction、srcset、xlink:href の javascript:、data:text/html、vbscript: を、空白や実体参照で隠した細工ごと捕まえます。
サンドボックス内プレビュー
結果は空の sandbox と no-referrer を指定した iframe に描かれるので、中身が実行・送信・遷移することはありません。
整形・最小化・そのまま
同じ洗浄済みツリーを 3 通りに書き出せます。<pre> の中の空白は、他が再インデントされても保たれます。
次のツールへ引き継ぐ
結果を DiffSnap、CodeCard、WordFlow、Base64Bolt、ZipFlow へ直接送れます。ダウンロードと再アップロードは不要です。
タブの外に出ない
サニタイザーはページに同梱された JavaScript ライブラリです。アップロードも API 呼び出しも CDN 取得も一切ありません。
仕事の中身を見せるサニタイザー
オンラインの HTML クリーナーの多くは文字列だけを返し、信用してくれと言います。これは判断の記録を残します。どのタグが捨てられ、どの属性が外され、どの URL がスキーム検査に落ちたか。しかもそのどれもワンクリックで覆せます。洗浄結果は後からつぎはぎするのではなく、あなたのポリシーから作り直されるからです。
100% プライベート & セキュア
アップロードも API キーも、貼り付けた内容の追跡もありません。ライブラリはページに同梱されているので、CDN から取ってくるものもありません。HTML はタブのメモリに留まり、閉じれば消えます。
必要になる場面
リッチテキストエディタの出力を保存する前に洗浄する。CMS への貼り付けから Word や Google ドキュメントのゴミを取り除く。第三者のマークアップを描画前に安全にする。保存したページから読める本文を取り出す。これから信用しようとしているマークアップに実行され得るものが含まれていないか確かめる。既知のペイロード見本があるのは、想像ではなく答えを見てもらうためです。
解析とセキュリティ判断は、ブラウザ自身のセキュリティチームが引用するライブラリである DOMPurify に任せています。querySelectorAll を手書きで舐める処理ではありません。フック API 経由で使い、完成した文字列ではなく途中の DOM を受け取っています。削除レポートと項目ごとの例外が成立するのはそのためです。ミューテーション XSS、名前空間の取り違え、素朴なクリーナーが見落とす URL の細工にも対応します。
よくある質問
Q貼り付けても何も起きないのはなぜですか。+
意図した動作です。貼り付けやファイルを開く操作は HTML を読み込むだけで、サニタイザーは「サニタイズ」を押したときに動きます。こうすればツールの推測を眺めるのではなく先にポリシーを選べますし、大きな文書がキー入力のたびに解析されることもありません。
Q削除レポートで実際に何ができますか。+
どの行も取り消せる判断です。「残す」を押すとその一点だけを例外に加えて走査全体をやり直すので、<iframe> を戻しても onload 属性まで一緒に通ることはありません。入力テキストは書き換えないので、取り消しとやり直しは軽いままです。
Qタグを許可リストにするだけで出力は安全になりますか。+
なりません。タグしか見ないクリーナーの多くはそこで間違えます。どんな許可リストの <a> でも href="javascript:…" を持てるため、ここでは属性と URL スキームを別に検査します。タグを塞ぎながら属性を放置するのはサニタイズではありません。
Qどの URL スキームが通りますか。+
あなたがチェックしたものだけです。それ以外は href、src、srcset、action、formaction、poster、cite、xlink:href から取り除かれます。タブ、改行、HTML 実体参照の裏に隠した値も含みます。data: はラスター画像に限定します。SVG のデータ URL は直接開くと自前のスクリプトを実行するため、常に不許可です。
Qライブプレビューは安全ですか。+
はい。sandbox 属性を空文字列にした iframe で描画するため、スクリプト、フォーム、ポップアップ、遷移がすべて塞がれます。加えて no-referrer を指定しているので、残った画像がどのページから来たかを漏らすこともありません。
QHTML はどこかに送信されますか。+
いいえ。サニタイザーはこのページに同梱された JavaScript で、あなたのタブの中で動きます。アップロードも API 呼び出しも CDN への要求もありません。ネットワークタブを開いて確認できます。
Qどのくらいの大きさの文書まで扱えますか。+
解析はおおむね線形なので、数メガバイトのマークアップでも普通のノート PC で 1 秒を大きく下回ります。実測時間は実行のたびに表示されます。出力欄の構文強調は 200 KB を超えると切れます。その大きさでは色付けの費用が見合わないからです。