Javascript 如何使用respond JS在IE8中应用2个媒体查询?
所有代码在IE9+中都可以正常工作 这在IE8中使用: 这并不是: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
@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以此修复为前缀,那么它将变得过度膨胀。如果出现这种情况,请重新考虑条件注释。