Символьные примитивы в HTML-коде, представленном в кодировке UTF-8
Для некоторых символов, не входящих в «базовый» набор ASCII, в HTML существуют специальные символьные примитивы - например, ©
для символа ©
.
Однако, если страницы сайта отдаются в кодировке UTF-8 (или UTF-16), использовать примитивы необязательно - можно просто писать в HTML-коде ©
.
Какие есть соображения за и против? На ум приходит два аргумента:
- обратная совместимость: если HTML с кодом
©
будет почему-то сохранён в однобайтной кодировке (cp1251 / windows-1251 и т.п.), ничего не изменится, а если в однобайтную кодировку попробовать экспортировать символ©
- получится кракозябра; - наглядность: актуально для пробельных (
, 
), невидимых (­
) или очень похожих визуально (−
,–
,—
,‾
, ...) символов - так легче отличить один символ «тире» от другого, чуть длиннее/короче.
Аргументов за повсеместное использование в коде «готовых» символов вместо символьных примитив как-то не придумывается. Что ещё я упустил?
Источник: Stack Overflow на русском