Для отображения HTML-страницы правильно, браузер должен знать, какой набор символов он должен использовать.
Символьный набор для раннего World Wide Web был ASCII. ASCII поддерживает цифры от 0-9, заглавные и строчные буквы английского алфавита и некоторые специальные символы.
Поскольку многие страны используют символы, которые не являются частью ASCII, набором символов по умолчанию современных браузеров является ISO-8859-1.
Полный набор символов ISO-8859-1.
Если веб-страница использует иной набор символов, чем-набор ISO-8859-1, то это должно быть указано в 'meta' тег.
International Standards Organization (ISO) - Международная организация по стандартизации, которая определяет стандартные наборы символов для различных алфавитов/языков.
Различные наборы символов используемые в мире представлены ниже:
| Набор символов | Описание | Область использования |
|---|---|---|
| ISO-8859-1 | Алфавит на латыни, часть 1 | Северная Америка, Западная Европа, Латинская Америка, Карибы, Канада, Африка |
| ISO-8859-2 | Алфавит на латыни, часть 2 | Восточная Европа |
| ISO-8859-3 | Алфавит на латыни, часть 3 | Юго-Восточная Европа, эсперанто, разные другие |
| ISO-8859-4 | Алфавит на латыни, часть 4 | Скандинавские страны / страны балтики ( и другие страны, которые не в ISO-8859-1 ) |
| ISO-8859-5 | Алфавит на латыни, часть 5 | Языки использующие кирилицу, такие как Болгария, Беларусь, Россия и Македония |
| ISO-8859-6 | Латынь/Арабский язык, часть 6 | Языки, которые исрользуют арабский алфавит |
| ISO-8859-7 | Латынь/греческий язык, часть 7 | Современный греческий язык, так же как и математические символы взяты из греческого |
| ISO-8859-8 | Латынь/Иврит, часть 8 | Языки, которые используют ивритский алфавит |
| ISO-8859-9 | Латынь 5, часть 9 | Турецкий язык. Такой же как ISO-8859-1, включая турецкие символы вместо некоторых исландских |
| ISO-8859-10 | Латынь 6 лапиш, норвежский, эскимосский | Норвежские языки |
| ISO-8859-15 | Латынь 9 (ака латынь 0) | Похож на ISO 8859-1, но наименее используемые символы заменены на европейские символы и другие нехватающие символы |
| ISO-2022-JP | Латынь /Японский, часть 1 | Японский язык |
| ISO-2022-JP-2 | Латынь /Японский, часть 2 | Японский язык |
| ISO-2022-KR | Латынь /Корейский, часть 1 | Корейский язык |
Поскольку символьные наборы, перечисленные выше, ограничены в размерах, и они не совместимы в многоязычной среде, Консорциум Unicode разработал стандарт Unicode.
Стандарт Unicode охватывает все символы и знаки пунктуации в мире.
Юникод позволяет обработать, хранить и обмениваться текстовыми данными независимо от платформы, независимо от того как программа, вне зависимости от языка.
Консорциум Unicode разрабатывает стандарт Unicode. Его цель заключается в замене существующих символьных наборов на стандартный Unicode Transformation Format (UTF).
Стандарт Unicode стал успехом и осуществляется в XML, Java, ECMAScript (JavaScript), LDAP, CORBA 3.0, WML и т.д. Стандарт Unicode также поддерживается многими операционными системами и всеми современными браузерами.
Консорциум Unicode сотрудничает с ведущими организациями по разработке стандартов, такими как ISO, W3C и ECMA.
Unicode может быть реализован в различных символьных наборах. Наиболее часто используемые кодировки UTF-8 и UTF-16:
| Набор символов | Описание |
|---|---|
| UTF-8 | Символы в UTF8 могут быть от 1 до 4 байта. UTF-8 может воспроизвести любую букву в стандарте Unicode. UTF-8 обратно совместим с ASCII. UTF-8 является предпочтительной кодировкой для электронной почты и веб-страниц |
| UTF-16 |
16-битный Unicode Transformation Format является переменной длины для кодировки Unicode. Она способна кодировать весь репертуар Unicode. UTF-16 используется в основных операционных системах и средах, таких как Microsoft Windows 2000/XP/2003/Vista/CE и Java и .NET байт коды среды |
Первые 256 символов набора Unicode соответствуют 256 символам ISO-8859-1.
Все процессоры HTML 4 уже поддерживают UTF-8, и все XHTML и XML процессоры поддерживают UTF-8 и UTF-16!