HTML-сущности: кодирование / декодирование 🔒 Ваши данные не покидают браузер.

Экранируйте спецсимволы для HTML или превратите & обратно в &.

Ctrl+SСкачать

Об этом инструменте

Пять символов опасны в сыром HTML: &, <, >, " и '. Неэкранированные в пользовательском контенте, они ломают разметку — или хуже, открывают дверь XSS-инъекциям. Кодирование превращает их в сущности вроде &amp;, которые отображаются как текст.

Инструмент мгновенно кодирует и декодирует в обе стороны, с опцией экранировать и все не-ASCII символы числовыми сущностями. Всё работает в браузере.

Частые вопросы

В чём разница между именованными, десятичными и шестнадцатеричными сущностями?

Это три способа записать одну и ту же ссылку на символ — &amp;, &#38; и &#x26; означают «&». Именованные сущности читаются лучше всего, но существуют лишь для фиксированного набора символов; десятичные и шестнадцатеричные подходят для любой кодовой точки Unicode.

Зачем вообще экранировать такие символы, как & и <, в HTML?

Потому что HTML-парсер браузера обрабатывает < и & особым образом — неэкранированный < может случайно открыть тег, а неэкранированный & может начать сломанную ссылку на сущность. Экранирование не даёт пользовательскому тексту быть ошибочно распознанным как разметка.

Кодирование HTML-сущностей защищает от XSS?

Это необходимая часть, но не вся история — важно, куда попадёт текст (в атрибут, URL, блок script и т.д. — каждому нужно своё экранирование). Считайте этот инструмент одним из строительных блоков, а не полноценным санитайзером.

Декодирование сущностей сломает настоящие HTML-теги в моём вводе?

Нет. Декодирование разрешает только ссылки на символы (&...;), не трогая настоящие теги — поэтому можно смело вставить целый фрагмент разметки и декодировать только сущности внутри него.

Отправляется ли мой текст куда-либо при кодировании или декодировании?

Нет. Всё происходит на стороне клиента, в вашем браузере; ничего не загружается.