Mystery наконец-то была решена спустя почти три недели: казалось, что синтаксический анализ white-space:normal;
правильно, но не действительно делает что-то с ней (фактически, делая пробел: nowrap; бессмертный)ошибка в IE 5.5.Более поздние версии IE, которые попадают в своего рода «режим совместимости» или «режим причуд», могут повторять это неправильное поведение.На его внешний вид влияет как точная версия IE, так и содержимое DOCTYPE - и даже интранет или интернет (что объясняет, почему он вообще не отображается для многих людей, и почему так много ответов, кажется, неимеет смысл).
верный способ избавиться от этого неправильного поведения - заставить все версии IE использовать более новую модель рендеринга (в приведенных ниже примерах используется «последняя модель рендеринга»что каждая версия способна "), что требует отправки им HTTP-заголовка X-UA-Compatible
либо с веб-сервера, если это возможно, либо внутри каждого соответствующего документа в качестве запасного варианта.Для сервера Apache команда для добавления в .htaccess выглядит примерно так:
Header set X-UA-Compatible "IE=edge,chrome=1"
Для PHP это должно быть просто добавление пары строк кода, а для IIS это просто добавление конфигурации.(Вы также можете поэкспериментировать с оптимизацией отправки этого заголовка только с файлами HTML и / или отправки его только в браузеры IE.)
Если вы не можете изменить поведение сервера, отступление заключается в добавлении в каждого соответствующего файла до все Javascript или CSS что-то похожее на
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">