`

CSS Sprites 图片整合技术

 
阅读更多

把网站中用到的所有小图标整合在一张图片上,减少浏览器对服务器的请求。

 

当您往U盘中拷200张图片,会等很久。但是如果弄成一个文件,再拷贝就会快很多。CSS Sprites(图片整合技术) 的目的就是通过整合图片,减少对服务器的请求数量,从而加快页面加载速度。如下图所示:

 


 

美国YAHOO在页面制作中所用到的图片整合技术,这样做虽然需要花一定的时间来有规则的合并这些ICON,栏目背景,图片按钮,以方便CSS调用,但是这样做绝对是合算的,而且是有必要的,YSlow也是极力推荐的。

 

实现方法:

 

首先将小图片整合到一张大的图片上
然后根据具体图标在大图上的位置,给背景定位。background-position:-8px -95px;
浅谈CSS Sprites技术以及图片优化 〔背景图整合〕

 

  关于CSS Sprites技术的优化我们能做到多少,能减多少的请求数量。这并且不是单方面能做到的,一切取决于XHTML、CSS、CSS Sprites图片之间的配合。现时为止没有绝对优化的做法,这也是我在项目中经常衡量CSS Sprites图片与XHTML关系,如:《一张背景实现自适应九宫格》,以下总结了图片切割术与图象优化的一些方法。

 

图片优化

 

  一、对于非动画的GIF更建议使用PNG8因为它同样能做到一样的效果,而且能为你节省10%-30%的文件体积。
  二、Photoshop相比起Fireworks,导出同等质量的PNG图片,体积会稍大。而Fireworks虽然做了相应压缩优化,但没有达到最优秀的压缩。
  三、我所知的设计软件,对于PNG图片的处理都没做到最优秀的压缩,图片体积还有一定的压缩空间。可以尝试使用下面介绍的”图像优化工具” 做无失真的压缩优化。
  四、图片体积及尺寸方面,建议体积保持在100K以内(较为符合国情最佳请求SIZE),size为800px(最佳尺寸)。(从某权威人事中得知,具体无从考证)

 

CSS Sprites图片切割术

 

  一、CSS Sprites图片顺序合图片由上至下、左至右添加。而background-position一般采用数字组合形式定位,这样能减少维护带来的不必要麻烦。
  二、不建议CSS Sprites图片中保持一定的间距,因为文件size增大而增加文件体积。
  三、CSS Sprites图片中把颜色较近或相同的组合在一起可以降低颜色数,因为少色数的图片文件体积会相对的小。
  四、size相同的CSS Sprites图片中留有较大空隙,某程度上多数情况会增大了体积,所以CSS Sprites的图片不要有空隙。
  五、在size相同的CSS Sprites图片中,垂直排列的图片会比水平排列的文件体积要大。
  六、在CSS Sprites图片中,水平排列的图片会比垂直排列的文件体积要大。
  七、图片对等合并:应用CSS Sprites图片时,适当地把对等相同的图像合并,以节省空间及减少体积。
  八、区分开不需要合并的图像:如当前用户确定只显示一种状态或一个级别时,不必要把其他的级别或状态的图片合并。
  九、黄金切割位:在CSS Sprites图片的最右或左边为最灵活动位置最适宜摆放文本前的icon,因此不会受到其它CSS Sprites图片干预,也不需要预留一定的行宽。

 

相关的图像优化工具
  网上流传的优化工具繁多常见的如:
  ImageMagick、PNGGauntlet、pngcrush、pngrewrite、Optipng、PNGOut等。

分享到:
评论

相关推荐

    CSS Sprites 图片整合技术分析

    综上所述,CSS Sprites 图片整合技术是提高网站性能的重要手段之一,尤其对于那些依赖大量小图标和图形的网站,应用此技术可以显著改善用户体验。然而,使用时也需权衡其优缺点,根据项目需求选择合适的设计策略。

    CSS Sprites技术

    1. **文件大小控制**:虽然CSS Sprites技术能够减少HTTP请求次数,但如果Sprites图片文件过大,反而会导致加载时间变长。因此,在实际应用中需要权衡文件大小与请求次数之间的关系。 2. **兼容性问题**:尽管现代...

    css sprites图片背景优化技术

    CSS Sprites图片背景优化技术是一种常见的前端性能优化策略,它将多个小图像合并到一张大图(称为sprites图)中,然后通过CSS的background-position属性来控制显示其中的某一部分。这种方法可以显著提高网站的加载...

    css sprites

    CSS Sprites,中文常称为“CSS精灵”,是一种在网页设计中广泛应用的技术,旨在优化网页加载速度和减少HTTP请求。这个技术的基本思想是将网站中多个小图标或背景图像合并到一张大图(称为精灵图)中,然后通过CSS的...

    CSS Sprites样式生成工具.zip

    而CSS Sprites通过将这些小图像合并到一张大图(称为Sprite图)中,然后利用CSS的background-position属性来定位显示图片的特定部分,从而减少了HTTP请求,提高了页面的加载效率。 **CSS Sprites的生成过程** 1. *...

    CSS Sprites 技巧

    CSS Sprites是一种网页图像优化技术,源于计算机图形学中的精灵技术,旨在减少网络请求次数,提升网页加载速度。它将多个小图像整合到一张大图(称为Sprite图)中,然后利用CSS背景定位来显示需要的部分。这样,...

    CSS Sprites 的小工具

    总的来说,CSS Sprites是一种高效且实用的网页优化技术,CSS Satyr这样的工具则使得实现这一技术变得更加便捷。在现代网页开发中,熟练掌握CSS Sprites的使用和工具的配合,能有效提升网站性能,提供更好的用户体验...

    CSS_Sprites

    - **Xing**:使用CSS Sprites整合了按钮、图标以及LOGO等元素。 - **Amazon**:通过精心设计的大图像来实现CSS Sprites,提高了页面加载效率。 - **Apple**:在其官方网站中利用CSS Sprites技术制作了导航菜单的鼠标...

    CSS Sprites 样式生成工具(bg2css)

    **CSS Sprites 知识点详解** CSS Sprites,又称为CSS精灵,...综上所述,CSS Sprites是一种有效的网页优化技术,`bg2css`工具则是实现这一技术的实用辅助工具,它简化了图片合并和CSS代码生成的过程,提高了网页性能。

    利用CSS Sprites实现切图技术.docx

    【CSS Sprites技术详解】 CSS Sprites是一种网页图像优化技术,它将多个小图像合并到一个单独的图像文件中,然后通过CSS的background-position属性来定位显示需要的图像部分。这样做的主要目的是减少HTTP请求次数,...

    CSS Sprites工作原理

    CSS Sprites的工作原理是将这些小图整合到一张大图中,只用一个HTTP请求获取这张大图,然后通过改变元素的`background-position`属性来显示大图中的不同部分。 例如,假设我们有一个大图`sprite.png`,包含了“最大...

    也来折腾折腾css sprites

    **CSS Sprites**(通常被称为CSS精灵)是一种被广泛采用的技术,用于提高网站性能,特别是在加载图片资源方面。通过这种方式,可以将多个小图像合并成一个较大的图像文件,从而减少HTTP请求的数量,提升网页的加载...

    CSS Sprites 圆角制作教程

    在本教程中,CSS Sprites被用来实现圆角效果,即将四个不同角度的圆角图像整合到一张图片中,通过CSS定位显示需要的部分。 【圆角制作】在CSS3之前,由于浏览器对CSS2.1标准的支持限制,创建圆角通常需要使用一些...

    CSS Sprites图片合并代码

    生成整合图片时,PNG8格式的图片相比GIF格式的图片通常可以减小约30%的体积。这是因为PNG格式提供了更好的压缩率和透明度支持,而不会像GIF那样有色彩数的限制。此外,Fireworks这个图像编辑工具生成的PNG图片通常会...

    css sprites如何使用?.docx

    通过CSS Sprites,所有的小图像都被整合到一个文件中,浏览器只需要请求一次,大大减少了网络延迟。 **使用CSS Sprites的步骤:** 1. **创建Sprite图:** 首先,你需要将所有需要的小图像拼接成一个大的图像文件。...

    CSS Sprites Generator 雪碧图生成工具

    在网页设计中,CSS Sprites(雪碧图)是一种有效的优化图像加载的技术,它将多个小图标或背景图像合并到一张大图上,通过CSS的定位来显示需要的部分,从而减少HTTP请求次数,提升页面加载速度。`CSS Sprites ...

    什么是CSS Sprites(图片合并)技术 图文介绍

    CSS Sprites正是通过整合图片,减少对服务器的请求次数,从而加快页面的加载速度。 总的来说,CSS Sprites技术是一种有效的图像优化和性能提升手段。通过合理地规划精灵图的设计和布局,以及在开发过程中适时应用...

    css Sprites小实例代码

    通过使用CSS Sprites技术,可以将多个小图片整合成一张大图,这样浏览器仅需要一次请求即可加载所有的图片资源,大大减少了HTTP请求的数量。 3. **服务器压力减轻**: 通过减少图片的请求次数,服务器的负载相应...

Global site tag (gtag.js) - Google Analytics