我最近使用 SASS 3.2 在我一直从事的项目中使用块实现了这项技术@content
,并且我刚刚达到需要包括对旧浏览器(如 IE7 和 8)的支持的地步。
例子:
.overview {
padding: 0 0 19px;
@include respond-to(medium-screens) {
padding-top: 19px;
} //medium-screens
@include respond-to(wide-screens) {
padding-top: 19px;
} //medium-screens
}
它们都不支持媒体查询,过去我经常通过为这些浏览器提供所有样式来处理这个问题,当我将媒体查询分成单独的部分文件(例如 _320.scss、_480.scss 和我的IE 样式表像这样加载它们:
@import 320.scss;
@import 480.scss;
etc.
它将加载所有样式,并始终为 IE7 - 8 分配 940 像素(或任何最大宽度)的布局和样式。通过像这样在 SASS 3.2 内嵌样式中嵌套样式,它消除了对单独的部分样式表的需要,但完全搞砸了我为 IE 加载样式的方式。
关于如何解决这个问题的任何想法或解决方案?我可以使用诸如 respond.js 之类的 polyfill 来强制 IE 使用媒体查询,但我更愿意只为 IE 提供一个不灵活的站点。
关于如何最好地组织这些文件或更好的解决方案的任何想法?