2010-10-05 1 views
7

У меня есть разные сайты, обслуживаемые, по сути, сбегая от того же кода. Одна страница отображается правильно, а другая, по-видимому, не имеет CSS.IE9 игнорирует CSS для определенных страниц?

Когда я воспитываю консоль разработчика IE9 для разбитой страницы, я вижу:

SEC7113: CSS was ignored due to mime type mismatch

Так что объясняет, почему страницы делают неправильно, но вопрос в том, почему я вижу эту ошибку на одна страница, но не другая?

Использование скрипача, то же CSS подается на обоих сайтах, и оба сайта имеют в метатега:

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8"/>

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

+0

Я бы подарил это как ошибку для Microsoft. (Какой doctype является html?) –

+1

В стандартном режиме IE9 даже таблицы стилей одинакового происхождения будут игнорироваться, если они не будут доставлены с типом MIME text/css. http://blogs.msdn.com/b/ie/archive/2010/10/26/mime-handling-changes-in-internet-explorer.aspx – Amitd

ответ

12

Это не похоже на вещь эмуляции IE - похоже, что CONTENT-TYPE в ответе не является «text/css». Похоже, IE9 предусматривает, что файлы, которые, как ожидается, будут содержать CSS, на самом деле отмечены как таковые.

Просто из интереса, являются ли страницы CSS обработаны каким-либо образом? то есть они отображаются на странице ASPX, чтобы вы могли вводить CSS? Если это так, то вы можете убедиться, что ваша страница декларация в верхней части включает в себя декларацию ContentType, например:

<%@ Page Language="C#" ContentType="text/css" %> 
+0

Да, файлы css хранятся как двоичные капли, а затем потоковые вплоть до клиента. У этих файлов не было соответствующих наборов заголовков. Как только мы установили заголовки, все сработало. – Alan

5

Оказывается, IE9 будет игнорировать недостающие контент-тип для всех сайтов, которые в вашем " доверенная-зона «.

Сайты за пределами доверенной зоны не будут отображать css, если отсутствует заголовок заголовка содержимого.

+5

Для IE9 требуется тип текста/CSS MIME для любой таблицы стилей, используемой на странице режима стандартов. Для IE9 требуется текстовый/CSS-тип MIME для любой таблицы стилей, используемой любой страницей режима, если ответ имеет X-Content-Type-Options: nosniff header. Для IE9 требуется тип текста/CSS MIME для любой таблицы стилей, которая является междоменной, если только исходная страница не находится в доверенной зоне. – EricLaw

+0

Включает ли это 'text/css; charset = utf-8'? У меня есть клиент, использующий IE9, у которого возникают проблемы с файлом CSS типа, который поставляется с этим «Content-Type». –

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

  • Нет связанных вопросов^_^