繁体   English   中英

IE7和IE8未加载条件CSS

[英]Conditional CSS not loaded by IE7 and IE8

我写了一堆CSS,使我的网站首先成为Mobile,然后我使用CSS Media Queries为桌面浏览器加载另一个样式表。 我之所以这样做,是因为有太多移动浏览器无法理解CSS媒体查询,桌面用户更有可能拥有支持此功能的现代浏览器。

我有以下CSS适用于所有现代浏览器(IE9,Chrome,Firefox 3.6 +,Safari 4 + 5):

然后我意识到IE7和IE8不支持CSS媒体查询,所以上面的内容不起作用。 所以我添加了一个条件语句来加载它:

<link rel="Stylesheet" type="text/css" href="/css/mobile.css" media="all"/>
<!-- [if lt IE 9]>
<link rel="Stylesheet" type="text/css" href="/css/desktop.css" media="all" />
<! [endif] -->  
<link rel="Stylesheet" type="text/css" href="/css/desktop.css" media="only screen and (min-width: 640px)" />

但是,使用IE Tester和Browsershots,我已经确认在IE 7和8中没有加载desktop.css 。它似乎完全忽略了样式表。

然后我尝试将条件语句更改为<!-- [if IE 8]>但是没有任何效果。

最后,我完全删除了条件语句,产生了以下代码:

<link rel="Stylesheet" type="text/css" href="/css/mobile.css" media="all"/>
<link rel="Stylesheet" type="text/css" href="/css/desktop.css" media="all" />

最后一次尝试导致我的desktop.css被加载到IE7和IE8中。 所以这证明了CSS是可以的。 看起来我的条件语句没有被触发。

我有什么想法我做错了吗?

删除空格。 这打破了条件语法 否则,IE将其视为正常评论。

<!--[if IE 8]>
...
<![endif]-->

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM