HTML-сущности кодирование и декодирование

Конвертируйте специальные символы вроде &, <, > в HTML-сущности (&amp;, &lt;, &gt;) или декодируйте их обратно. Необходимо для безопасного отображения пользовательского ввода на веб-страницах.

Возможности

Именованные сущности
Числовые сущности
Таблица быстрой справки

Как использовать

1. Выберите режим «Кодировать» или «Декодировать».

2. Вставьте текст в поле ввода.

3. Результат отображается справа — нажмите «Копировать».

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

В HTML символы вроде <, > и & имеют особое значение, поэтому, чтобы показать их как текст, нужны мнемоники вроде &lt;, &gt; и &amp;. Такое кодирование текста, введённого пользователями, — ещё и одна из базовых мер защиты от межсайтового скриптинга при вставке содержимого на страницу. Инструмент преобразует в мнемоники пять зарезервированных символов — & < > " ' — и все символы вне ASCII: именованный режим использует читаемые формы вроде &eacute; и &copy;, где они существуют, а числовой режим записывает всё кодами вроде &#233;. Декодирование превращает любую именованную или числовую мнемонику обратно в настоящий символ. Это удобно, чтобы подготовить примеры кода для статьи в блоге, исправить дважды закодированный текст в CMS или прочитать экранированные строки из ответа API.

Часто задаваемые вопросы

Какие символы обязательно кодировать в HTML?
В текстовом содержимом всегда нужно кодировать & и <, а > обычно тоже — для единообразия. Внутри значений атрибутов нужно кодировать и кавычку, в которую заключено значение (" или '). Остальные символы можно писать как есть, если страница в UTF-8.
Чем различаются именованные и числовые мнемоники?
Именованные мнемоники используют читаемые имена вроде &copy; или &euro;, но существуют только для определённого списка символов. Числовые, например &#169; или &#x20AC;, могут представить любой символ Unicode. Браузеры обрабатывают оба вида одинаково.
Почему в тексте появляется &amp;amp;?
Текст закодировали дважды, и &amp; превратилось в &amp;amp;. Декодируйте один-два раза, пока мнемоники не исчезнут, и проследите, чтобы приложение экранировало содержимое только на последнем этапе вывода.
Достаточно ли HTML-кодирования для защиты от XSS?
Оно защищает текст внутри HTML-элементов и атрибутов в кавычках. Содержимое, вставляемое в JavaScript, CSS, URL или атрибуты без кавычек, требует экранирования под конкретный контекст, поэтому пользуйтесь шаблонизатором своего фреймворка, а не ручным кодированием.
Выполняет ли декодирование HTML или скрипты?
Нет. Декодирование превращает мнемоники в символы безопасным способом и показывает результат обычным текстом, поэтому теги из входных данных не отображаются, а скрипты не выполняются.

Похожие инструменты

URL кодирование / декодирование
Конвертируйте текст в процентно-кодированную форму для использования в URL-адрес...
JWT-декодер
Вставьте JWT-токен для просмотра его заголовка, полезной нагрузки и подписи. Вре...
Unicode экранирование / деэкранирование
Конвертируйте текст в Unicode-последовательности вида \u0041 или декодируйте экр...
Base64 кодирование / декодирование
Введите текст для кодирования в Base64 или вставьте строку Base64 для декодирова...
Генератор Lorem Ipsum
Генерируйте текст-заглушку в виде абзацев, предложений или слов для дизайна и пр...
Генератор хешей
Вычисляйте хеши MD5, SHA-1, SHA-256 и SHA-512 из текста или файлов. Вся обработк...
Генератор случайных цветов
Генерируйте палитру случайных цветов со значениями HEX, RGB, HSL и OKLCH. Закреп...
Тестер регулярных выражений
Тестируйте регулярные выражения JavaScript с подсветкой совпадений в реальном вр...