CSS Sprite的应用【转】

什么是CSS Sprite ?

不知道您在浏览yahoo.com的网页中是否注意到,yahoo在页面制作上的技术和大多数网站不一样,他们把页面上的 ICON,栏目背景啊,图片按钮啊等都有会有规则的合并一张背景图,然后用background-position来实现背景图片的定位,他们为什么要花费一些时间来合并这些CSS背景图片呢,CSS中用一张背景图做页面的技术到底有什么优势呢?

通常我们把它叫做CSS图像拼合技术,当然还有人把CSS Sprites叫做”CSS贴图定位”。

使用CSS Sprite 的好处?



CSS Sprites(图片整合技术) 的目的就是通过整合图片,减少对服务器的请求数量,从而加快页面加载速度。如下图所示:

实现方法:

  • 首先将小图片整合到一张大的图片上
  • 然后根据具体图标在大图上的位置,给背景定位。background-position:-8px -95px;

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

CSS Sprites图片切割术
  三、CSS Sprites图片中把颜色较近或相同的组合在一起可以降低颜色数,因为少色数的图片文件体积会相对的小。
  四、size相同的CSS Sprites图片中留有较大空隙,某程度上多数情况会增大了体积,所以CSS Sprites的图片不要有空隙。
  五、在size相同的CSS Sprites图片中,垂直排列的图片会比水平排列的文件体积要大。
  六、在CSS Sprites图片中,水平排列的图片会比垂直排列的文件体积要大。
  九、黄金切割位:在CSS Sprites图片的最右或左边为最灵活动位置最适宜摆放文本前的icon,因此不会受到其它CSS Sprites图片干预,也不需要预留一定的行宽。

如下是apple公司的应用

如何来制作?


基本的原理,就是利用background-postion的负值来进行调节。

当我们定位于background-position:-50px -50px;时发现图片向左上,移动了,也就以DIV的左上角为中心,图向左移动了50PX,向右也移动了50PX.

参考点: 以图片为(0,0)为原点。

如下图片>>>>进行定位



使用fireworks工具来定位图片。

代码示例

  background-position: -396px -116px;
时间: 2024-10-10 13:50:44

CSS Sprite的应用【转】的相关文章

个人对于css sprite的一点点简介

css sprite即CSS雪碧图又称CSS精灵.它存在的一个主要作用就是:减少了网页的http请求次数,从而大大的提高了页面的性能,节省时间和带宽. 例如 这样算下来.CSS sprite真的是个很实用的东西. 那么如何制作CSS sprite图呢?用下面这个例子来说明 这样一个图 就能用css sprite来制作.很好的减轻了服务器的压力.和页面的性能. 代码图如上. 另外推荐一个css sprite网站

前端试题-什么是css sprite?优缺点?

CSS Sprite是一种网页图片应用处理方式.它允许将一个页面涉及到的所有零星图片都包含到一张大图中去,这样,在访问页面时,就只需请求一次就可以了,而不必一次次向服务器发送请求. 它的原理就是把见面中一些背景图片整合到一张图片文件中,再利用CSS的"background-image","background-repeat","background-position"的组合进行背景定位,实现多个位置的背景,一张图来搞定. 优点 1 减少网页的ht

compass与css sprite(雪碧图)

什么是css sprite? css sprite,中文叫雪碧图,也有人喊CSS精灵,就是一种背景拼合的技术,然后通过background-position来显示雪碧图中需要显示的图像. MDN相关链接:https://developer.mozilla.org/zh-CN/docs/Web/Guide/CSS/CSS_Image_Sprites 优点:1.减少页面请求数 2.降低图片占用字节 缺点:1.拼图麻烦 2.后期维护麻烦 为什么使用compass? 最近项目中需要使用到很多小图片,想用

CSS Sprite (JS)

HTML 1 <body> 2 <!-- ul.sprite>li*5>s.s-icon+a{CSS Sprite} --> 3 <!-- 以上是Sublime Text快速拼写 --> 4 <ul class="sprite"> 5 <li><s class="s-icon"></s><a href="">CSS Sprite</a

CSS Sprite笔记

1. 什么是CSS Sprite 将一些碎小的图片拼接为一张大点的图片来使用,目的是为了减少浏览器的http请求次数以提高网页的加载速度.每次请求图片都需要跟服务器建立一次连接,并且浏览器的最大并发请求数是有限制的.使用雪碧图并不能减少传送的数据的总量,但可以通过节省掉一部分建立.关闭连接的时间来加快网页的加载速度. 2. 如何使用 2.1 怎么得到雪碧图? ※ 直接手动拼接,只要可以将需要用到的小图片拼在一张图片上即可,当然,拼接应该尽量遵循的原则: 尽量让这张图片以后可维护: 在保证可维护性

Css Sprite Demo

一般为了减少Http请求数,会把多张图片合并成一张图片,然后通过改变background-position属性值,来显示对应的图片,例如类别栏目html代码: <div class="cat"> <ul > <li class="cat-1"> <i></i> <h3>服装内衣</h3> </li> <li class="cat-2"> &

使用compass自动拼css sprite

使用compass自动拼css sprite css sprite (css 雪碧)又叫css精灵,是一种图片拼合技术.多用在图标上,把几个图标拼成一个图片,页面加载的时候只需要load拼好的图片,然后使用background-position配合width.height来显示不同的图标.这样做可以减少页面请求数.但是,想想把一个个图标从psd上扣下来,合到一个图上,然后还要慢慢算background-position,这也真是醉了,而且后期如果改了图标,又要重新拼一次,拼完再算一次backgr

css sprite 雪碧图

一.什么是雪碧图? 1.我们先来看一下淘宝上面用到的雪碧图实例: a.前端展示 b.css雪碧图为 2.概念 CSS sprite在国内很多人叫css精灵,是一种网页图片应用处理方式.它允许你将一个页面涉及到的所有零星图片都包含到一张大图中去,这样一来,当访问该页面时,载入的图片就不会像以前那样一幅一幅地慢慢显示出来了. 3.什么时候用到雪碧图? a.静态图片,不随用户信息的辩护而变化 b.小图片,图片容量比较小 c.加载量比较大 4.工具介绍 刚刚下载了一个比较实用的雪碧图工具Css Spri

css sprite实例

css sprite直译过来就是CSS精灵.通常被解释为“CSS图像拼合”或“CSS贴图定位”.本文章向码农们介绍css sprite使用方法和基本使用实例,需要的码农可以参考一下. 一.什么是css sprites css sprites直译过来就是CSS精灵.通常被解释为“CSS图像拼合”或“CSS贴图定位”.其实就是通过将多个图片融合到一张图里面,然后通过CSS background背景定位技术技巧布局网页背景.这样做的好处也是显而易见的,因为图片多的话,会增加http的请求,无疑促使了网