Обработка кодирования символов в HTML и CSS

Предполагаемая аудитория: Авторы HTML/XHTML и CSS контента. Этот материал можно применять при создании документов в редакторе или с помощью скриптов.

Примечание: Так как этот документ был переведен, изменения были внесены в написанный английским языком оригинал. Смотрите журнал изменений.

Это пособие собирает и организовывает указания на статьи, которые помогут вам понять, как обращаться с важнейшими аспектами разработки HTML и CSS, которые связаные с символами и кодированием символов.

В двух словах

Этот раздел для людей, которые просто хотят узнать ключевые рекомендации из пособия. Если вы чего то не понимаете или не хотите более подробно ознакамливаться с остальной частью пособия.

Если вы можете, то сохраните ваши страницы, как UTF-8.

Всегда назначайте кодирования вашего документа. Если можете, то используйте заголовок HTTP. Всегда используйте назначение для содержания документа.

You can use @charset or HTTP headers to declare the encoding of your style sheet, but you only need to do so if your style sheet contains non-ASCII characters and, for some reason, you can't rely on the encoding of the HTML and the associated style sheet to be the same.

Старайтесь избегать использования byte-order mark (метка порядка байтов) в UTF-8 и убедитесь, что ваш HTML код сохранен в форме C нормализации Unicode (NFC).

Избегайте использования экранированных символов, за исключением невидимых или неоднозначных символов. И не используйте управляющие символы Unicode, если вместо них можно использовать разметку.

Необходимая справочная информация

Если вы новичок в этой теме, но вы хотите изучать различные части пособия, то есть определенные основные понятия, которые вы должны понять. Если вы знакомы с этими понятиями, то вы можете переходить к следующему разделу.

Выбор и применение кодирования

Контент состоит из последовательности символов. Символы представляют буквы алфавита, знаки препинания и т. д. Но контент хранится на компьютере в виде последовательности байтов, которые имеют числовые значения. Иногда больше, чем один байт используется для представления одного символа. Как коды, используемые в шпионаже, так и способ в какой последовательности байтов превращается в символы зависит от того, какой ключ использовался для кодирования текста. В этом контексте, тот ключ называется кодировкой символов.

На выбор есть много кодировок. Эта часть пособия дает простой совет: какую кодировку использовать для вашего контента, и как ее применить.

Выбор и применение кодировки символов offers simple advice on which character encoding to use for your content, and how to apply it.

Как назначить кодировку символов

Вы должны всегда указывать кодировку, которая используется для HTML или XML страницы. Если вы этого не сделаете, вы рискуете, что символы в контенте будут неправильно интерпретированы. Это не просто вопрос читабельности текста человеком, больше - машины также должны понимать ваши данные. Вы должны также проверить, не указали ли вы различные кодировки в разных местах.

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

Назначение кодировки символов в CSS предоставляет информацию для CSS.

 

Метка порядка байтов (BOM)

Метка порядка байтов, или BOM - то с чем вы столкнетесь при использовании кодировок символов основанных на Unicode, таких как UTF-8 и UTF-16. В некоторых случаях вам нужно будет удалить BOM, в других - убедиться, что она есть.

Метка порядка байтов (BOM) в HTML helps you understand the issues.

Формы нормализации Unicode

Нормализация - то, о чем вы должны знать, если вы разрабатываете HTML страницы в UTF-8 (или любой другой кодировке Unicode) с таблицами стилей CSS, особенно если вы имеете дело с текстом в скрипте, который использует ударения или другие знаки препинания.

Нормализация в HTML и CSS explains this further.

Использование экранированных символов

Используя только символы ASCII вы можете применять экранированные символы для представления любого символа из набора символов Unicode в HTML, XML или CSS.

Использование экранированных символов в разметке и в CSS provides best practices for use of escapes, and tells you how to use them when they are needed.

Символы или разметка?

Наконец, есть ряд символов похожих на управляющие символы Unicode, некоторые из которых выполняют такую же роль, как разметка. Вопрос: какие символы можно использовать, а какие вам следует избегать?

Символы или разметка? answers that question.