2013-03-26 2 views
0

У меня есть сайт в HTML5. Большая часть контента есть на чешском языке, который имеет некоторые специальные символы, такие как «ř, č, š» и т. Д.Html charset и поддержка специальных (национальных) символов

Я искал в Интернете рекомендуемые кодировки, и получил эти ответы: UTF-8, ISO 8859- 2 и Windows-1250.

<meta http-equiv="Content-Type" content="text/html; charset=ISO 8859-2" /> 

Я пробовал UTF-8, который не работал вообще, а затем установился с ISO 8859-2. Я тестировал свой сайт на своем компьютере в последних версиях Chrome, Firefox, IE и Opera. Все работало нормально, но когда я тестировал свой сайт по адресу http://browsershots.org/, эти символы отображались неправильно (в тех же браузерах, которые я использовал для тестирования!).

Как это возможно? Как я могу гарантировать, что все символы отображаются правильно во всех веб-браузерах. Возможно ли, что использование HTML5 вызывает эти проблемы (поскольку оно не полностью поддерживается всеми браузерами, но я не использую какие-либо расширенные функции)?

Спасибо за любые подсказки и советы по устранению неполадок!

+0

[Обращение с Unicode Front To Back в веб-приложении] (http://kunststube.net/frontback/), [Что каждый программист абсолютно уверен, должен знать о кодировках и наборах символов для работы с текстом] (http: //kunststube.net/encoding/) – deceze

ответ

3

Если вы используете HTML5, попробуйте эту короткую декларацию кодировки:

<meta charset="UTF-8"> 

Дополнительно проверить вас HTML кодировкой файла. Вы можете сделать это в Notepad ++, меню Encoding -> Encode в UTF-8.

+0

Это работает для меня на Microsoft Expression Web 3.0. Файл> Свойства> Язык (вкладка)> HTML ENCODING - Сохранить документ как вариант. – ARTniyet

0

UTF-8 - это наилучший набор символов для международного использования. Если он не отображается правильно, вы должны убедиться, что ваш файл сохранен в формате UTF-8. Даже «Блокнот» имеет опцию «UTF-8» в диалоговом окне сохранения.

2

Важно то, что фактическое кодирование данных совпадает с заявленной кодировкой. Из описания кажется, что фактическая кодировка - ISO-8859-2, поэтому вы должны ее объявить. Обратите внимание, что имя кодировки не содержит пробелов, но дефисов. (Интересно, использовали ли вы его с места - я бы ожидать, браузеры игнорировать тег тогда.) Ниже приводится простейшая декларация:

<meta charset=ISO-8859-2> 

Я не стал бы доверять на browsershots.org получать такие вещи, как это право. Тестирование в реальных браузерах более полезно.

Смежные вопросы