Как сделать так, чтобы китайские символы отображались в IE8 без принудительного режима совместимости? - PullRequest
4 голосов
/ 06 октября 2010

Все решения для этой проблемы говорят, что используют <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />, что работает, потому что заставляет браузер отображать в представлении совместимости (то есть, как если бы это был IE7), но символы не отображается, когда пользователь фактически использует IE7 (или ряд других браузеров). Вместо этого я вижу квадраты.

Кто-нибудь еще сталкивался с этим? Как ты с этим справился?

Ответы [ 3 ]

10 голосов
/ 07 марта 2011

Настройка следующего семейства шрифтов в CSS работала для меня:

font-family: Arial Unicode MS, Arial, Helvetica, sans-serif;

Поскольку в этом случае Arial Unicode MS является единственным доступным шрифтом для упрощенного китайского языка.

Обновление: Благодаря Спайку, порядок первых двух шрифтов был неправильным.Исправлено.

5 голосов
/ 07 декабря 2010

это не проблема кодирования.Проблема ясно видна на этой странице, которая имеет правильный метатег utf-8: http://www.jp41.com/internet-explorer/chinese/.

Проблема в том, что в IE8 для китайского шрифта по умолчанию ничего не задано!

Вотисправить.

  1. Нажмите alt, чтобы открыть меню файлов.

  2. Перейдите в / tools / internet options / fonts /

  3. Установите для «Языкового сценария» значение «Упрощенный китайский»

  4. Выберите единственную опцию - Arial Unicode MS

  5. Принять изменения-проблема решена.

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

Изображение, если проблема решается:http://www.robertpate.net/blog/wp-content/media/ie8-chinese-bug-fullsize.jpg

3 голосов
/ 06 октября 2010

Это звучит как проблема кодирования для меня.Китайские символы, вероятно, выводятся с использованием кодировки UTF-8, но браузеру не сообщается об этом, и по умолчанию используется другая кодировка.

Попробуйте включить следующую строку:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Это должно вызватьбраузер в кодировке UTF-8.(Эта строка включена в сайт, указанный в ссылочном вопросе: http://www.canadainternational.gc.ca/china-chine/index.aspx?lang=eng,, который отлично работает в моем IE8 и по умолчанию - UTF-8.)

Обратите внимание, что в исходном вопросе говорится, что это действительнополностью отдельная проблема, в которой IE8 полагается на установленные языковые пакеты Windows, а IE7 и более ранние версии этого не сделали.для браузеров IE8.

<!--[if IE 8]>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<![endif]-->

IE7 должен игнорировать эту строку, вызывая ее нормальное отображение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...