HTML Entities

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

Нашли ошибку или хотите предложить улучшение?

Улучшить калькулятор «HTML Entities»

Теория

HTML-сущности позволяют вставить в страницу символы, которые иначе были бы частью разметки: знак «меньше» записывают как \(\texttt{<}\), «больше» — \(\texttt{>}\), амперсанд — \(\texttt{&}\). Есть и именованные сущности для типографики, например \(\texttt{ }\) — неразрывный пробел.

Кодирование превращает специальные символы в сущности, декодирование — обратно. Это обязательный приём при выводе пользовательского текста в HTML: он не даёт тексту «сломать» разметку страницы.

Важно: вставлять в HTML непроверенный текст без экранирования опасно — через него возможна XSS-атака с внедрением скрипта.

Пример с решением

  1. Условие. Закодируйте строку «» для вставки в HTML.
  2. Формула. Спецсимволы → именованные сущности.
  3. Подстановка. \(\texttt{<}\) → \(\texttt{<}\), \(\texttt{>}\) → \(\texttt{>}\).
  4. Вычисление. Собираем: \(\texttt{<b>}\).
  5. Ответ. «<b>» — браузер покажет текст «», а не жирную разметку. Калькулятор выполнит обе замены; декодирование вернёт исходную строку.

Главное

  • Сущности — безопасная запись спецсимволов.
  • Ключевые: \(\texttt{<}\), \(\texttt{>}\), \(\texttt{&}\).
  • Экранирование защищает от поломки разметки и XSS.