Кодировщик / декодер HTML-сущностей
Экранируйте текст для безопасного использования в HTML, преобразуйте спецсимволы в числовые сущности или декодируйте сущности обратно в обычный текст.
Распространённые HTML-сущности
| Символ | Сущность | Числовая | Описание |
|---|---|---|---|
| & | & | & | Амперсанд |
| < | < | < | Знак «меньше» |
| > | > | > | Знак «больше» |
| " | " | " | Двойная кавычка |
| ' | ' | ' | Апостроф (одинарная кавычка) |
| ⍽ | |   | Неразрывный пробел |
| © | © | © | Знак авторского права |
| ® | ® | ® | Зарегистрированный товарный знак |
| ™ | ™ | ™ | Знак товарного знака |
| € | € | € | Знак евро |
| £ | £ | £ | Знак фунта |
| ¥ | ¥ | ¥ | Знак иены |
| ¢ | ¢ | ¢ | Знак цента |
| § | § | § | Знак параграфа |
| ° | ° | ° | Знак градуса |
| ± | ± | ± | Знак плюс-минус |
| × | × | × | Знак умножения |
| ÷ | ÷ | ÷ | Знак деления |
| … | … | … | Многоточие |
| – | – | – | Короткое тире |
| — | — | — | Длинное тире |
| « | « | « | Левая угловая кавычка |
| » | » | » | Правая угловая кавычка |
| · | · | · | Средняя точка |
Об инструменте «Кодировщик / декодер HTML-сущностей»
HTML использует несколько символов для собственного синтаксиса, поэтому амперсанд, знаки «меньше» и «больше» и кавычки, встречающиеся в тексте, нужно записывать как сущности, например &, < и ". Их экранирование — также первая линия защиты от межсайтового скриптинга (XSS), когда вы выводите на страницу пользовательский ввод. Выберите «спецсимволы», чтобы экранировать только эти пять символов, или «все не-ASCII», чтобы также превратить буквы с диакритикой, символы и эмодзи в числовые сущности вида é — это полезно для старых систем, шаблонов писем и файлов с неизвестной кодировкой. Режим декодирования делает обратное: превращает именованные, десятичные и шестнадцатеричные сущности в читаемые символы — точно так же, как браузер. В справочной таблице перечислены самые нужные сущности. Всё работает в вашем браузере.
FAQ
В чём разница между ' и '?
Обе означают апостроф. ' определена в HTML5 и XML, но не в старом HTML 4, поэтому числовая форма ' — самый надёжный вариант, работающий везде.
Достаточно ли экранирования HTML для защиты от XSS?
Экранирование пяти спецсимволов защищает текст между тегами и внутри атрибутов в кавычках. Контексты URL, JavaScript и CSS требуют собственного кодирования, поэтому используйте также шаблонизатор с экранированием по умолчанию и Content Security Policy.
Использовать именованные или числовые сущности?
Числовые сущности работают для любого символа Unicode и в любом парсере. Именованные удобнее читать, но существуют лишь для некоторых символов. На страницах в UTF-8 обычно нужно экранировать только спецсимволы.