由于 IE <8 和其他一些次要浏览器不支持 @media 查询,我想通过模拟 1200px 之类的特定宽度来为不受支持的浏览器创建一个 CSS,并将其导出为一个非响应式 CSS 文件以与这些浏览器一起使用。是否有任何工具或其他简单的方法来实现这一目标?
编辑:我正在使用 Twitter Bootstrap 3
由于 IE <8 和其他一些次要浏览器不支持 @media 查询,我想通过模拟 1200px 之类的特定宽度来为不受支持的浏览器创建一个 CSS,并将其导出为一个非响应式 CSS 文件以与这些浏览器一起使用。是否有任何工具或其他简单的方法来实现这一目标?
编辑:我正在使用 Twitter Bootstrap 3
Bootstrap 3 和媒体查询不支持 - ie7。即使你使用任何像 Respond.js 这样的 polyfill,你也可以让 IE6-8 响应媒体查询。但是bootstrap-3.0是针对移动优先的设计方法,不支持ie7。但是如果您在媒体查询之外定义所有实际设计,一切都应该没问题。它将在所有浏览器上运行。如果你真的想支持ie7,那就用bootstrap 2.*
在您的 html 中使用条件语句,如下所示:
<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!-->
<html class="no-js">
然后通过以下方式定位您的浏览器:
.lt-ie9 .btn-nav
{
//for ie 8 only, change following.
margin: 0;
display: inline-block;
}
.lt-ie8 .btn-nav{
// for ie 7
background: white;
}
或者只是简单地定义您的标准 css,它应该适用于文件顶部的所有浏览器,而无需媒体查询。这应该是编写 css 的首选方式,并结合了上述良好实践。
或者使用像 Respond.js 这样的 polyfill使媒体查询适用于 ie6-8