上图是口袋妖怪的组合图片,可以点这里欣赏更多。不是加载每个但以图片
时间进行到2000年,Web设计向着精致、巧妙的方向发展。设计师们开始考虑使用非Javascript的方 式制作鼠标滑过、悬停菜单的效果,这时CSS Sprite应运而生,它基于同上文提到的游戏Sprite同样的原理,并且使用CSS更容易控制,很快的流行开来。
2004年,Dave Shea 提出了一种使用CSS控制组合图片的方案 ,将许过小的图片组合在一起,使用css定义背景属性,来控制图片的显示位置和方式。
当页面加载时,不是加载每个单独图片,而是一次加载整个组合图片。这是一个了不起的改进,它大大减少了HTTP请求的次数,减轻服务器压力,同时缩短了悬停加载图片所需要的时间延迟,使效果更流畅,不会停顿。
CSS Sprites用在哪里?
CSS Sprites可以用在很多场合,大型网站可以将许多单独的图片,以有机的方式组合起来,从而使其便于维护和更新。图片之间通常会留出较大的空白,使 得图片不会影响网页的内容。但同时CSS Sprite大多使用于较固定的像素定位中,它的弹性较差,收到定位等因素的制约。所以,你需要在可维护性vs降低负载之间权衡利弊,选择最适合你的项目 的方式。
下面是一些CSS Sprites的使用范例:
这个网站将一些按钮、图标以及Logo做成了CSS Sprites:
Amazon
亚马逊使用的大幅、整齐巧妙的CSS Sprites:
Apple
苹果网站使用CSS Sprites来制作导航菜单的鼠标悬停效果:
YouTube
YouTube使用了一个2008像素高的CSS Sprites:
CNN
CNN使用了非常简单谨慎的方案:
Digg
Digg的方案比较复杂:
Yahoo
Yahoo将他们漂亮的图标等距离排布起来:
Google使用了极其简化的方案:
Dragon Interactive
一个丰富多彩的CSS Sprites方案:
TV1.rtp.pt
一个很大很酷的CSS Sprites方案
CSS Sprites常用来合并频繁使用的图形元素,如导航、Logo、分割线、RSS图标、按钮等。通常它们不会作为网页内容出现,因为涉及内容的图片并不是每个页面都一样。
关于CSS Sprites的文章
CSS Sprites: Image Slicing’s Kiss of Death
中文版:样式表贴图定位(CSS Sprites):图像切片的死亡之吻
最权威的CSS Sprites介绍文章之一
CSS Sprites: What They Are, Why They’re Cool And How To Use Them
一篇图文并茂的介绍文章
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)
How Yahoo.com and AOL.com Improve Web Performance With CSS Sprites
介绍Yahoo、AOL等网站使用CSS Sprites降低服务器压力的案例。
What Are CSS Sprites?
又一篇介绍文章
Sprite Optimization
Dave Shea的思考:是不是真的有必要简历复杂的大型CSS Sprites?答案是不!不要搞得太复杂,找到一个折中的方案才是正道。
Creating Easy and Useful CSS Sprites
猜你喜欢