Очиститель и санитайзер HTML
Вставьте HTML, выберите политику и нажмите кнопку. Вы получите очищенную разметку и подробный отчёт о каждом отброшенном теге и атрибуте — и сможете отменить любое решение, ничего не вставляя заново.
Как это работает
Принесите HTML
Вставьте его, перетащите файл .html или придите из другого инструмента. Он просто ждёт: открытие файла никогда не запускает очистку.
Выберите политику
Четыре пресета покрывают обычные случаи. Откройте ручную панель, чтобы самому править список тегов, список атрибутов и допустимые схемы URL.
Запустите
Один проход строит очищенное дерево и попутно записывает каждое решение. Мегабайт разметки занимает несколько миллисекунд.
Проверьте и отмените
Отчёт перечисляет, что ушло и почему. Не согласны со строкой — нажмите «Оставить»: проход повторится с этим единственным исключением.
Что он умеет
Настоящая политика белого списка
Теги, атрибуты и схемы URL — отдельные списки под вашим контролем. Заблокировать тег, не тронув его атрибуты, — это не очистка.
Подробный отчёт об удалениях
Каждый отброшенный элемент и атрибут сгруппирован со счётчиком, образцом содержимого и причиной удаления.
Отмена любого решения
Нажмите «Оставить» в строке — и очистка повторится, разрешив ровно эту одну вещь. Ваш исходный текст никогда не правится.
Схемы URL проверяются
javascript:, data:text/html и vbscript: в href, src, formaction, srcset или xlink:href отлавливаются, включая уловки с пробелами и HTML-сущностями.
Просмотр в песочнице
Результат рисуется в iframe с пустой песочницей и без реферера, так что внутри ничто не может выполниться, отправиться или перейти.
С отступами, минифицировано или как есть
Одно и то же очищенное дерево сериализуется тремя способами. Пробелы внутри <pre> сохраняются, даже когда остальное переформатируется.
Передача следующему инструменту
Отправьте результат прямо в DiffSnap, CodeCard, WordFlow, Base64Bolt или ZipFlow без скачивания и повторной загрузки.
Ничего не покидает вкладку
Санитайзер — это JavaScript-библиотека, собранная вместе со страницей. Ни загрузки на сервер, ни вызова API, ни обращения к CDN.
Санитайзер, который показывает свою работу
Большинство онлайновых очистителей HTML отдают вам строку и ждут доверия. Этот сохраняет журнал решений: какой тег отброшен, какой атрибут снят, какой URL не прошёл проверку схемы — и позволяет отменить любое из них одним щелчком, потому что очищенный результат заново порождается из вашей политики, а не латается задним числом.
100% приватно и безопасно
Никаких загрузок, ключей API и слежки за тем, что вы вставляете. Библиотека собрана вместе со страницей, так что и с CDN ничего не подтягивается. Ваш HTML остаётся в памяти вкладки и исчезает при её закрытии.
Когда это нужно
Очистить то, что выдал визуальный редактор, перед сохранением. Убрать мусор Word и Google Docs из вставки в CMS. Обезопасить чужую разметку перед отрисовкой. Вытащить читаемый текст из сохранённой страницы. Проверить, нет ли в разметке, которой вы собираетесь доверять, чего-то исполняемого — пример с известными нагрузками существует ровно для того, чтобы вы увидели ответ, а не предположили его.
Разбор и решения по безопасности берутся из 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 в виде data-URL при прямом открытии выполняет собственный скрипт, поэтому не разрешается никогда.
QБезопасен ли предпросмотр?+
Да. Он рисуется в iframe, у которого атрибут sandbox равен пустой строке, что блокирует скрипты, формы, всплывающие окна и переходы, плюс политика без реферера, чтобы ни одна уцелевшая картинка не выдала, с какой страницы вы пришли.
QОтправляется ли мой HTML куда-нибудь?+
Нет. Санитайзер — это JavaScript, собранный с этой страницей и работающий в вашей вкладке. Ни загрузки, ни вызова API, ни запроса к CDN — можно проверить с открытой вкладкой сети.
QДокумент какого размера он потянет?+
Разбор примерно линеен, так что несколько мегабайт разметки укладываются заметно меньше чем в секунду на обычном ноутбуке; измеренное время показывается после каждого запуска. Подсветка синтаксиса в панели вывода отключается выше 200 КБ, потому что на таком размере раскраска стоит дороже, чем даёт.