CSS Sprite是一种网页图片应用处理方式。
CSS Sprite的原理是将一个网页或者一个模块所用到的零碎的icon整合拼接到一张大图里,再把这张大图作为背景图放入到网页中,当访问该页面时,加载的图片就不会像以前那样一幅一幅地慢慢显示出来了。
CSS Sprite的优点:
- 减少网页的HTTP请求,大大的提高页面的性能。
- 减少图片的字节。
- 解决图片命名上的困扰,只需对一张集合的图片上命名就可以了,不需要对每一个小元素进行命名,从而提高网页的制作效率。
- 维护起来更加方便。
CSS Sprite的缺点:
- 在图片合并的时候,要把多张图片有序的、合理的合并成一张图片,还要留好足够的空间,防止板块内出现不必要的背景。
- 在宽屏及高分辨率下的自适应页面,如果背景不够宽,很容易出现背景断裂。
- CSS Sprite在开发的时候比较麻烦,要通过工具测量计算每一个背景单元的精确位置。
- CSS Sprite在维护的时候比较麻烦,如果页面背景有少许改动,一般就要改这张合并的图片。
CSS Sprite的使用方法:
- 将网页中一些背景图片整合拼合成一张图片中。
- 再利用CSS的“background-image”,“background-repeat”,“background-position”的组合进行背景定位。
CSS Sprite示例:
定位背景图片。
.icon { background-image: url('sprites.png'); background-position: 0 0; }
定位多列背景图片。
.icon1 { background-image: url('sprites.png'); background-position: 0 0; } .icon2 { background-image: url('sprites.png'); background-position: -50px 0; }