01. css sprite是什么,有什么优缺点?

1.css sprite是什么,有什么优缺点?
一般被意译为“CSS图像拼合”或“CSS贴图定位”
1)CSS Sprites的优势
  • 利用CSS Sprites能很好地减小网页的http请求,从而大大提升了页面的性能,这也是CSS Sprites最大的优势;
  • CSS Sprites能减小图片的字节,曾经屡次比较过,把3张图片合并成1张图片的字节老是小于这3张图片的字节总和。
2)CSS Sprites的缺点
  • 在图片合并时,要把多张图片有序的、合理的合并成一张图片,还要留好足够的空间,防止板块内出现没必要要的背景。在宽屏及高分辨率下的自适应页面,若是背景不够宽,很容易出现背景断裂;
  • CSSSprites在开发的时候比较麻烦,你要经过photoshop或其余工具测量计算每个背景单元的精确位置,这是针线活,没什么难度,可是很繁琐;幸亏腾讯的鬼哥用RIA开发了一个CSS Sprites样式生成工具,虽然还有一些使用上的不灵活,可是已经比photoshop测量来的方便多了,并且样式直接生成,复制,拷贝就OK!  
  • CSS Sprites在维护的时候比较麻烦,若是页面背景有少量改动,通常就要改这张合并的图片,无需改的地方最好不要动,这样避免改动更多的CSS,若是在原来的地方放不下,又只能(最好)往下加图片,这样图片的字节就增长了,还要改动CSS。
说白了,CSS Sprites其实就是把网页中一些背景图片整合到一张图片文件中,再利用CSS的“background-image”,“background- repeat”,“background-position”的组合进行背景定位,background-position能够用数字能精确的定位出背景 图片的位置。
当页面加载时,不是加载每一个单独图片,而是一次加载整个组合图片。这是一个 了不得的改进,它大大减小了HTTP请求的次数,减轻服务器压力,同时缩短了悬停加载图片所须要的时间延迟,使效果更流畅,不会停顿。