Используемые символы
А теперь обратимся к политике используемых символов в HTML. Как известно, в компьютерах каждый символ все-таки на самом деле является неким числом. И операционная система при дакэбражеши текста выводит уже символ, соответствующий какому-либо числу. Таблица соответствия чисел и символов называется кодировкой. Но дело в том, что кодировок только для русскоязычных символов уже не менее пяти. И если браузер не распознает, какая кодировка использована гфи создании Web-страницы, то вместо текста пользователь увидит мешанину непонятных символов. Каждый, наверное, с этим встречался. Поэтому в каждый браузер встроена функция смены кодировки отображаемой Web-страницы. Однако язык HTML обладает возможностями указания используемой кодировки, чтобы браузер не пытался распознать ее самостоятельно. Для этих целей используется уже знакомый нам тег <meta>. Дело в том, что среди предбпределенных переменных протокола HTTP есть переменная с наименованием Сontent-Type. Она задает тип содержимого Web-страницы и дополнительно позволяет указывать наименование применяемой кодировки. Полностью соответствующая конструкция выглядит так:
<
META
http-equiv
=
"Content-Type"
content
=
"text/html; charset=ISO-8858-5"
>
В приведенном примере видно, что значение переменной состоит из двух частей, разделенных знаком точки с запятой. Первая часть говорит о том, что данный документ является обычным текстом с тегами HTML, а вторая часть указывает используемую кодировку. При этом использование слова charset является обязательным. А, после знака равенства указывается уже само название кодировки. В примере использовано стандартная кодировка, утвержденная Международной Организацией по Стандартизации (ISO) с поддержкой кириллицы. Однако вместо нее можно использовать стандартную кириллическую кодировку Windows или КОИ-8.
Также следует указать, что браузеры не могут обычным порядком отображать некоторые символы, которые встречаются в тексте. Так, если браузер в тексте встретит знак неравенства "меньше", то он просто интерпретирует его как открывающую скобку для тега. А так как стандартного тега за этим знаком не последует, то некоторая часть текста будет просто проигнорирована и не отображена. Более того, некоторые специализированные европейские символы просто отсутствуют на клавиатуре, и их будет затруднительно.вставить в текст содержимого Web-страницы. Проблему необходимо было решить. И выход был найден.
Вместо самих символов в текст подставлялись последовательности, которые можно было уже нормально интерпретировать. Так, знак неравенства "меньше", он же – открывающая угловая скобка, заменяется на последовательность ⁢, В данном случае вся последовательность заключена в кавычки, начинается она со знака амперсанта, а заканчивается знаком точки с запятой. Подобные последовательности перекочевали и в язык следующего поколения – XML, и получили название "eatities", что в русскоязычной литературе переводят как "сущности". Перевод, конечно, правильный, но, к сожалению, ничуть не разъясняет суть дела. Проще и, наверное, правильней называть эти сущности текстовыми подстановками. Список текстовых подстановок используемых в HTML приведен в табл. 1.1.
Но подстановки бывают не только текстовыми. Мы можем воспользоваться подстановкой для вставки в текст любого символа из текущей кодировки, если нам известен его числовой код. Для этого используется конструкция &#числовой_код;. В подобном формате численных подстановок используется запись числового кода в десятичном виде. Если необходимо использовать шестнадцатеричную запись, то подстановка примет следующий вид: &#хчисловой_код;, т. е. после знака решетки добавляется латинский символ "икс".