关于CSS Sprite切图技术

我们经常看到一个页面上有很多小图标,可是当我们用工具去打开时却发现


这些小图标其实在一张图片上,这是怎么实现的呢疑问

这当中用到了CSS Sprites切图技术。

CSS Sprites其实就是把网页中一些图标整合到一张图片文件中,再利用CSS的“background-image”,“background- repeat”,“background-position”的组合进行背景定位,background-position可以用数字能精确的定位出背景图片的位置。

优点:减少网页http请求,提高页面性能,降低服务器负载;文件命名减少麻烦。

缺点:定位繁琐,布局固定,降低网页弹性。

示例:

[html]  view plain copy
  1. <html>  
  2. <head>  
  3. <meta charset="utf-8">  
  4. <title>CSS sprites</title>  
  5. <style type="text/css">  
  6. div{  
  7.     background-image:url(nav_logo99.png);  
  8.     background-repeat:no  
  9. }  
  10. .logo{  
  11.     width:120px;  
  12.     height:40px;  
  13.     background-position:-24px 0px  
  14. }  
  15. .play{  
  16.     width:28px;  
  17.     height:28px;  
  18.     background-position:-138px -41px  
  19. </style>  
  20. </head>  
  21.   
  22. <body>  
  23. <div class="logo"></div>  
  24. <div class="play"></div>  
  25. </body>  
  26. </html>  
效果如下:


这当中,定位比较繁琐,我采用Photoshop来进行定位。

在PS中,右上角选——设计,然后点信息,我们把鼠标放到图片上,便可看到像素的X与Y值,还可以用矩形工具拉出一个矩形,查看它的width与height值。

代码中div的width和height值是你要显示的区域的长和高,background-position:X Y的值就是鼠标放到你要显示的小图标的左上角

的横坐标和纵坐标,特别注意:有负号

另外,还可以通过%比来赋值,如上面的Google图标:

background-position:50%  0%

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值