Если комментарии IE отображаются в IE9

Вот что происходит, когда вы посещаете мой сайт в IE9 — IE9 Error

Это код, который вызывает это:

<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<link rel="stylesheet" href="stylesheets/ie.css" media="screen" />
<![endif]-->
<!--[if !IE]-->
<link rel="stylesheet" href="stylesheets/sizeable.css" media="screen" />
<!--[endif]-->

<!--[if !IE]-->
<link rel="stylesheet" href="stylesheets/sizeable.css" media="screen" />
<!--[endif]-->

Мысли?


person marcamillion    schedule 12.03.2012    source источник


Ответы (4)


РЕДАКТИРОВАТЬ: исправлено согласно комментаторам, спасибо. Смотрите также другие ответы.


Исправленный код (вторая часть):

<!--[if !IE]> -->
<link rel="stylesheet" href="stylesheets/sizeable.css" media="screen" />
<!-- <![endif]-->

<!--[if !IE]> -->
<link rel="stylesheet" href="stylesheets/sizeable.css" media="screen" />
<!-- <![endif]-->
person Czechnology    schedule 12.03.2012

На самом деле, «тире» правильные, но сначала вы должны закрыть условные операторы, например:

<!--[if !IE]> -->
<link rel="stylesheet" href="stylesheets/sizeable.css" media="screen" />
<!-- <![endif]-->

<!--[if !IE]> -->
<link rel="stylesheet" href="stylesheets/sizeable.css" media="screen" />
<!-- <![endif]-->

Без добавления «тире» ни один браузер не будет обращать внимание на эти условия. Браузеры, отличные от IE, не читают комментарии, поэтому код должен находиться за пределами комментария для условия !IE.

person zebasz    schedule 15.04.2012

<!--<![if (IE X)|(IE Y)]--><link href="../css/style.css" rel="stylesheet" type="text/css" media="all" /><!--<![endif]-->

Вышеупомянутый условный комментарий будет работать правильно. Чтобы скрыть строку комментария, вы должны добавить <!--<! в этом формате.

person user2531551    schedule 14.11.2013

Вы преждевременно закрываете свои комментарии. Ваши условные комментарии должны открываться так:

<!--[cond]>

и закончить так:

<![end]-->

Вы сделали первое правильно, но поскольку ваши открывающие теги заканчиваются на -->, это закрывает комментарий прямо здесь, поэтому тег ссылки, который должен быть частью комментария, не является таковым и интерпретируется как обычный HTML.

Надеюсь, это поможет!

person Xavier Holt    schedule 12.03.2012