我想在不同的设备宽度上有不同大小的图像,有时根本没有图像,以节省移动用户的带宽。
它会像这样工作吗:
Modernizr.load([{
test: 1025 > window.screen.width,
yep: "mobile.css",
nope: "desktop.css"
}]);
我还发现了以下纯 css 解决方案,据称该解决方案有效,并且只会在需要时加载图像:
<div id="test3">
<div></div>
</div>
#test3 div {
background-image:url('images/test3.png');
width:200px;
height:75px;
}
@media all and (max-width: 600px) {
#test3 {
display:none;
}
}
或者
<div id="test5"></div>
@media all and (min-width: 601px) {
#test5 {
background-image:url('images/test5-desktop.png');
width:200px;
height:75px;
}
}
@media all and (max-width: 600px) {
#test5 {
background-image:url('images/test5-mobile.png');
width:200px;
height:75px;
}
}
此解决方案的来源:http: //timkadlec.com/2012/04/media-query-asset-downloading-results/
但它相当复杂。
简单地使用modernizr来加载所有设置背景图像的css而不是加载多个图像版本是一个好主意吗?