Javascript 如何使用respond JS在IE8中应用2个媒体查询?

Javascript 如何使用respond JS在IE8中应用2个媒体查询?,javascript,jquery,css,internet-explorer-8,respond.js,Javascript,Jquery,Css,Internet Explorer 8,Respond.js,所有代码在IE9+中都可以正常工作 这在IE8中使用: 这并不是: @media (-webkit-min-device-pixel-ratio: 2) and (min-width: 700px), (min-resolution: 192dpi) and (min-width: 700px){ // Code } 有人知道将媒体查询传递给IE8的另一种方法吗?好吧,也许我完全弄错了,但您指定的是-webkit stuff和其他宽度查询 我不相信ie会理解webkit,但我能理解min

所有代码在IE9+中都可以正常工作

这在IE8中使用:

这并不是:

@media (-webkit-min-device-pixel-ratio: 2) and (min-width: 700px), 
(min-resolution: 192dpi) and (min-width: 700px){
  // Code
}

有人知道将媒体查询传递给IE8的另一种方法吗?

好吧,也许我完全弄错了,但您指定的是-webkit stuff和其他宽度查询

我不相信ie会理解webkit,但我能理解min resolution

@media (-webkit-min-device-pixel-ratio: 2) and (min-width: 700px), 
(min-resolution: 192dpi) and (min-width: 700px){
  // Code
}
我的意思是,我发现的一切都不清楚,因为您使用的是respond.js,所以可能是被迫的。我认为

仅通过媒体查询以IE8为目标:

@media \0screen {
    .your-css { background: blue; }
}
要排除IE8,请仅使用条件注释:

<!--[if !IE 8]> 
   @media queries for all browsers except IE 8
<![endif]-->

问题的出现是因为正如Milky所说,IE8无法识别
-webkit-

但是,它并没有完全忽略查询,而是读取并应用
minwidth
查询,从而应用用于更高分辨率显示的代码

@media (-webkit-min-device-pixel-ratio: 2) and (min-width: 700px), 
(min-resolution: 192dpi) and (min-width: 700px){
  // Code
}
解决方法是将
min resolution
查询从IE8中完全排除

提供了一个很好的回购协议。我最终使用的代码是:

@media (-webkit-min-device-pixel-ratio: 2) and (min-width: @screen-md-min), 
(min-resolution: 192dpi) and (min-width: @screen-md-min){
    :root * > .selector { 
// code
  }
}

抱歉,我忘了提到我正在使用respond.js。我想这应该是一个JS tagI更新的答案,带有回复类似您的JS问题的链接。希望这有帮助。是的,尽管问题是它正在读取查询,但只读取
(最小宽度)
,而不是
(最小设备比率)
。因此,它显示了不应该显示的内容。你知道一个简单的方法从查询中删除IE吗?很好。另一方面,如果查询范围中有大量的off.declarations以此修复为前缀,那么它将变得过度膨胀。如果出现这种情况,请重新考虑条件注释。