Главная›Инструменты›Разработка и данные›Кодирование и данные›HTML-сущности: кодировать и декодировать

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

В HTML пять символов имеют особый смысл — <, >, &, кавычки — и чтобы они появились на странице как текст, их записывают сущностями: &lt;, &gt;, &amp;, &quot;, &#39;.

—

Частые сущности

Обязательные пять: &lt; &gt; &amp; &quot; &#39;. Декодер понимает именованные из таблицы, десятичные &#N; и шестнадцатеричные &#xN;. Проверено 04.09.2026.

Какие знаки кодируют и в каком виде

Инструмент переводит текст в HTML-сущности и обратно. В разметке пять знаков имеют особый смысл: угловые скобки, амперсанд и две кавычки. Браузер принимает открывающую скобку за начало тега, амперсанд — за начало сущности, поэтому текст с этими знаками, вставленный в страницу как есть, ломает вёрстку, а пользовательский ввод с тегами превращается в дыру в безопасности. Режимов пять: кодировать только обязательные знаки, кодировать все не-ASCII символы именами или числами в двух формах, а также декодировать разметку обратно в текст.

Сущность записывается тремя способами. Именованная — по названию: &mdash; для длинного тире, &nbsp; для неразрывного пробела. Числовая десятичная — по коду символа в Unicode: &#8212;. Числовая шестнадцатеричная — тот же код в другой системе: &#x2014;. Числовые формы работают для любого символа, имена есть примерно у двух тысяч распространённых знаков. Декодер понимает все три записи, поэтому через него можно пропускать выгрузки из баз и ответы сервисов, где сущности перемешаны.

Знак амперсанда
Амперсанд: слитное написание латинского et, из-за которого в разметке и понадобились сущности. Фото: Infrogmation of New Orleans, CC BY-SA 2.0.
СимволИменованнаяЧисловаяКогда нужна
Открывающая угловая скобка&lt;&#60;Всегда: иначе браузер ждёт тег.
Закрывающая угловая скобка&gt;&#62;В паре с открывающей.
Амперсанд&amp;&#38;Всегда: с него начинается любая сущность.
Двойная кавычка&quot;&#34;Внутри значений атрибутов.
Апострофнет в HTML 4&#39;В атрибутах на одинарных кавычках.
Неразрывный пробел&nbsp;&#160;Между числом и единицей измерения.
Длинное тире&mdash;&#8212;Когда клавиатура даёт только дефис.
Знак рублянет имени&#8381;В системах без поддержки UTF-8.

История: от помпейского et до 252 имён HTML 4

Сам амперсанд старше разметки на два тысячелетия: это слитное написание латинского et, «и», встречающееся ещё в помпейских граффити. Наборщики держали для него отдельную литеру, а английское имя ampersand выросло из школьной скороговорки, которой в XIX веке заканчивали перечисление алфавита. Знак пережил все смены техники и в вебе получил новую работу — открывать запись символа именем.

Правило записывать особые знаки в виде имени пришло из SGML, языка описания разметки, ставшего международным стандартом ISO 8879 в 1986 году. HTML вырос из него и унаследовал синтаксис вместе с сущностями. В описании HTML 2.0 — RFC 1866, ноябрь 1995 года — перечислен набор Latin-1: буквы с диакритикой, знаки валют, неразрывный пробел. HTML 4.0 в декабре 1997 года добавил греческие буквы, математические символы и типографские знаки, доведя число имён до 252.

Тогда это было необходимостью: страница жила в однобайтовой кодировке, и вставить в неё греческую букву можно было только числом или именем. С переходом на UTF-8 надобность почти отпала — любой символ пишется в разметку как есть. Осталось обязательное: угловые скобки и амперсанд по-прежнему экранируют всегда, а данные, пришедшие от посетителя, экранируют в первую очередь. Современный стандарт знает больше двух тысяч имён, и почти все они нужны только для чтения старой разметки.

Наборная касса с литерами
Наборная касса: у каждого знака своя ячейка, и амперсанд лежал в ней рядом с буквами. Фото: Marcin Wichary, CC BY 2.0.
Печатная мастерская со шрифтовыми кассами
Типография: набор из отдельных литер и придумал правило записывать редкий знак отдельным именем. Фото: Aodhdubh, CC BY 2.5.

Какой режим выбрать и как поймать двойное кодирование

Для вставки текста в разметку хватает режима с пятью обязательными знаками: страница в UTF-8 покажет и кириллицу, и тире, и валюты без всякого кодирования. Режимы «все не-ASCII» нужны в других случаях: письма, которые пойдут через старые почтовые системы, выгрузки в системы с однобайтовой кодировкой, поля, где допустима только латиница. Именованные сущности читаются человеком, числовые надёжнее: имя может быть неизвестно старому разборщику.

Декодирование пригодится, когда выгрузка из базы или ответ сервиса приходят с сущностями вместо знаков. Если после первого прохода на экране осталось имя сущности буквами, текст закодировали дважды — прогоните его через декодер ещё раз. Обратная беда встречается чаще: разметку раскодировали и вставили в страницу, и теги из пользовательского текста ожили. Для адресов работает другая кодировка, со знаком процента, — её разбирает URL энкодер и декодер; посмотреть код и байты любого знака помогает инспектор Unicode.

Обязательных знаков5
Именованных сущностейбольше 2 000
Десятичная форма&#8212;
Шестнадцатеричная форма&#x2014;
Неразрывный пробел&nbsp;, U+00A0
Кириллица в UTF-8кодировать не нужно
Основа синтаксисаSGML, ISO 8879, 1986
Набор Latin-1HTML 2.0, RFC 1866, 1995

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

Ещё сущности нужны для символов, которых нет на клавиатуре: тире &mdash;, неразрывный пробел &nbsp;, знак рубля &#8381;. Инструмент кодирует текст в сущности — только обязательные пять, все не-ASCII символы именованными или числовыми — и декодирует любую разметку обратно в обычный текст, включая десятичные и шестнадцатеричные формы. Внизу таблица частых сущностей с именами и кодами. Проверено 04.09.2026.

  1. Для кодирования — обычный текст; для декодирования — HTML с сущностями.
  2. Только пять обязательных символов, все не-ASCII именованными сущностями или числовыми кодами; декодирование в обратную сторону.
  3. Кнопка копирует всё поле.
  4. Тире, кавычки-ёлочки, стрелки, знаки валют и математики.

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

Какие символы обязательно кодировать

В тексте — < и &, в атрибутах ещё кавычки. На практике кодируют все пять: &lt; &gt; &amp; &quot; &#39;. Без этого браузер примет < за начало тега, а пользовательский ввод с тегами станет XSS-уязвимостью.

Чем именованная сущность отличается от числовой

Именованная — по названию: &mdash;. Числовая — по коду Unicode: десятичная &#8212; или шестнадцатеричная &#x2014;. Числовые работают для любого символа, именованные есть только у двух с лишним тысяч распространённых.

Нужно ли кодировать кириллицу

Нет, если страница в UTF-8, а это стандарт. Кодировать не-ASCII имеет смысл в письмах и системах со старыми кодировками; режим «все не-ASCII» для этого.

Что такое &nbsp;

Неразрывный пробел: браузер не переносит строку на нём и не схлопывает несколько подряд. Ставится между числом и единицей измерения, инициалами и фамилией.

Как декодировать двойное кодирование

Если в тексте видно &amp;lt;, его закодировали дважды. Прогоните через декодер два раза — инструмент показывает, сколько сущностей осталось после прохода.

Заменяет ли инструмент экранирование в коде

Нет, в коде используйте функции языка или шаблонизатора: они экранируют автоматически и с учётом контекста. Инструмент нужен для разовой правки текста и проверки.

Спросите нейросети об инструменте

Отвечает DeepSeek по данным этой страницы и тому, что у вас сейчас на экране: что делает, как устроен, ограничения

Больше возможностей: Нейросеть для кода, написать, найти ошибку, объяснить.

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

URL энкодер / декодер

Кодирует ссылки и текст в percent-encoding и обратно. Построчно для списка URL, режим компонента или целой ссылки.

Открыть
Инспектор Unicode

Код каждого символа U+XXXX, десятичный номер, байты UTF-8 и UTF-16, HTML-сущность, поиск невидимых и составных символов в тексте.

Открыть
Генератор UUID

Версии 4 и 7 пачками, пять форматов записи и разбор готового идентификатора с датой создания для v7.

Открыть
Шифр Виженера

Шифрование и расшифровка по ключевому слову, а также шифр Цезаря со сдвигом и Атбаш, русский и латинский алфавиты, таблица Виженера.

Открыть
Картинка в Base64

Изображение в data URI для HTML и CSS и обратно: размер до и после, готовые фрагменты img и background, предпросмотр из строки.

Открыть
Сканер QR-кода

Считывает QR-код и штрихкод камерой или с картинки прямо в браузере: ссылка, Wi-Fi, визитка, телефон и номер товара разбираются по полям.

Открыть

Ещё инструменты для кода и данных

Base64 и URL, форматтер и сравнение JSON, хеши, регулярные выражения, cron, подсети, UUID, QR-код и Unix-время — в разделе 42 инструмента.