@程序员,一文掌握 Web 应用中的图片优化技巧!(13)

这是因为,在同样尺寸的屏幕上,高清屏可以展示的物理像素点比普通屏多,比如Retina屏,同样的屏幕尺寸下,它的物理像素点的个数是普通屏的4倍(2 * 2),所以普通屏上显示清晰的图片,在高清屏上就像是被放大了,自然就变得模糊了,要从图片资源上解决这个问题,就需要在设备像素密度为2的高清屏中,对应地展示一张两倍大小的图。

@程序员,一文掌握 Web 应用中的图片优化技巧!

而通常来讲,对于背景图片,我们可以使用CSS的@media进行媒体查询,以决定不同像素密度下该用哪张倍图,例如:

.bg{

background-image: url( "bg.png");

width: 100px;

height: 100px;

background-size: 100%100%;

}

@ media(-webkit-min-device-pixel-ratio: 2),(min-device-pixel-ratio: 2)

推荐阅读