HTML-сущности: кодирование / декодирование 🔒 Ваши данные не покидают браузер.
Экранируйте спецсимволы для HTML или превратите & обратно в &.
Ctrl+SСкачать
Об этом инструменте
Пять символов опасны в сыром HTML: &, <, >, " и '. Неэкранированные в пользовательском контенте, они ломают разметку — или хуже, открывают дверь XSS-инъекциям. Кодирование превращает их в сущности вроде &, которые отображаются как текст.
Инструмент мгновенно кодирует и декодирует в обе стороны, с опцией экранировать и все не-ASCII символы числовыми сущностями. Всё работает в браузере.
Частые вопросы
В чём разница между именованными, десятичными и шестнадцатеричными сущностями?
Это три способа записать одну и ту же ссылку на символ — &, & и & означают «&». Именованные сущности читаются лучше всего, но существуют лишь для фиксированного набора символов; десятичные и шестнадцатеричные подходят для любой кодовой точки Unicode.
Зачем вообще экранировать такие символы, как & и <, в HTML?
Потому что HTML-парсер браузера обрабатывает < и & особым образом — неэкранированный < может случайно открыть тег, а неэкранированный & может начать сломанную ссылку на сущность. Экранирование не даёт пользовательскому тексту быть ошибочно распознанным как разметка.
Кодирование HTML-сущностей защищает от XSS?
Это необходимая часть, но не вся история — важно, куда попадёт текст (в атрибут, URL, блок script и т.д. — каждому нужно своё экранирование). Считайте этот инструмент одним из строительных блоков, а не полноценным санитайзером.
Декодирование сущностей сломает настоящие HTML-теги в моём вводе?
Нет. Декодирование разрешает только ссылки на символы (&...;), не трогая настоящие теги — поэтому можно смело вставить целый фрагмент разметки и декодировать только сущности внутри него.
Отправляется ли мой текст куда-либо при кодировании или декодировании?
Нет. Всё происходит на стороне клиента, в вашем браузере; ничего не загружается.