如果IE评论出现在IE9中

时间:2012-03-12 22:32:57

标签: internet-explorer internet-explorer-9 conditional-comments

当您在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]-->

思想?

4 个答案:

答案 0 :(得分:3)

实际上,“破折号”是正确的,但首先你必须关闭条件,如下:

<!--[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条件的注释之外。

答案 1 :(得分:2)

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

以上条件评论将正常运作对于隐藏评论行,您必须以此格式添加<!--<!

答案 2 :(得分:1)

你过早地结束了你的评论。您的条件评论应该如下:

<!--[cond]>

并结束如下:

<![end]-->

你做的第一个是正确的,但因为你的开头标记以-->结尾,这就关闭了那里的评论,所以链接标签应该是评论的一部分,不是,被解释为常规HTML。

希望有所帮助!

答案 3 :(得分:0)

编辑:根据评论者的说法修改,谢谢。另见其他答案。


更正后的代码(第二部分):

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

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