Спецсимволы и сущности
HTML-сущности: nb-spaces, кавычки, оценки, эмодзи-комбинирование, числовые коды и когда их используют.
1. Понятие сущности
Сущность — текстовая ссылка на символ, которая начинается & и заканчивается точкой с запятой: © — ©. Нужны для символов, которых нет на клавиатуре или которые не набираются в HTML.
- < & немедленно нужны для литералов;
- основной список: copy, reg, trade, bull, hellip;
- числовые: © (десятичные) и © (шестнадцатеричные).
2. Самая важная пара
<p>Сильнее всего & быстрого — x < y и z & w</p>< — знак меньше (иначе браузер открыл бы тег), & — амперсанд (иначе началась бы сущность). Это два символа, которые ВСЕГДА должны экранироваться в тексте.
3. Неразрывный пробел
Цена: 1 299 ₽ — пробел, не дающий переносить «1299» отдельно.(nbsp — non-breaking space) склеивает слово и число: «1 299 ₽» не разорвётся в конце строки. Не подменяет обычные пробелы для отступов — path can в CSS.
4. Кавычки и мелкая типографика
«ёлочки» — не сущность, это обычный Unicode-символов.
“…” — левая и правая «английские» кавычки
«» — русские ёлочки
— — длинное тире (—)5. Математические и валютные
× — ×
÷ — ÷
± — ±
° — °
€ — €
¥ — ¥Для валют и единиц — те же правила: в UTF-8 символы набираются напрямую, сущности — совместимость.
6. Числовые коды
© — © (copy)
® — ® (registered)
… — … (горизонт)
√ — √ (корень)
👍 — 👍 (эмодзи-символ)Числовая форма N; / N; надёжна, когда именованной сущности нет. Десятичная и шестнадцатеричная равноправны; шестнадцатерич — компактнее для больших кодов.
7. Кодировка защищает
Если meta charset="UTF-8" и файл сохранён в UTF-8, то почти все сущности не нужны. Но <, &, стоит экранировать всегда — точно и аккуратно в любой кодировке.
| Символ | Сущность | Назначение |
|---|---|---|
| < | < | литерал меньше |
| & | & | амперсанд |
| неразр. пробел | | склейка слов/чисел |
| — | — | длинное тире |
| © | © | копирайт |
| × | × | знак умножения |
8. Чек-лист специальных символов
- < и & в любом тексте;
- для неразрывных сочетаний (числ+ед.);
- UTF-8 + мета — сущности минимальны;
- не путать & с & в URL: URL экранируется через encodeURIComponent, не сущностями;
- проверьте рендер: ©, —, ₽ читаются корректно.
Что дальше
Курс завершён.