Css 向ie8显示媒体查询的内容

Css 向ie8显示媒体查询的内容,css,responsive-design,Css,Responsive Design,有一种相当古老的方法(技巧3)说,如果您像这样启动媒体查询: @媒体屏幕,全部和(最小宽度:300px) 然后,理解媒体查询的浏览器将理解整个媒体查询,而旧版ie将忽略“所有和”之后的所有内容。因此,理论上,旧ie仍然可以看到查询中的所有内容。对于ie6和ie7来说,这是令人惊讶的事实,但不幸的是ie8忽略了查询中的所有规则 这很不幸,因为如果我们能 我们可以使用类似的方法,将布局内容移动到一个单独的样式表中,并使用条件注释将其提供给旧的IE 这种方法的问题是,我的css模块被分割在不同的样式表

有一种相当古老的方法(技巧3)说,如果您像这样启动媒体查询:

@媒体屏幕,全部和(最小宽度:300px)

然后,理解媒体查询的浏览器将理解整个媒体查询,而旧版ie将忽略“所有和”之后的所有内容。因此,理论上,旧ie仍然可以看到查询中的所有内容。对于ie6和ie7来说,这是令人惊讶的事实,但不幸的是ie8忽略了查询中的所有规则

这很不幸,因为如果我们能 我们可以使用类似的方法,将布局内容移动到一个单独的样式表中,并使用条件注释将其提供给旧的IE

这种方法的问题是,我的css模块被分割在不同的样式表之间。这违背了OOCSS和SMACS中的原则(它们非常有用!)


有一个问题,但想知道是否有人对如何做到这一点有任何想法?

感谢@cimmanon的评论,这让我找到了一个解决方案

使用。我能拥有的更少

global.less-这里有我所有的CSS,包括我所有的断点。断点设置为较少的变量。 compiled.less-导入global.less并编译为css文件 Compiled-belowie8-这将导入global.less并编译为css文件,但我已将最宽版面的媒体查询变量更改为“none”,因此在此变量中没有媒体查询


然后,在我使用条件注释为所有浏览器提供compiled.css,除非您愿意使用css预处理器,Sass可以很容易地做到这一点:谢谢,但请参阅我最后一篇关于OOCSS的评论-这与将css模块拆分为额外样式表的原理相同。更新旧网站时,在同一位置查看所有断点更容易,而无需打开更多sass文件?它生成了两个不同的样式表:一个“响应式”样式表,你可以隐藏我的错误-抱歉,我使用。更少,语法让我困惑!我需要重读几遍,让它下沉,但想发回感谢你的思考链接。