利用css sprites减少图片请求

  css sprites:网站前端开发者大多称之为“css精灵”,通俗的理解就是:将多张小图片合成为一张大图片,减少http请求次数而达到网页提速。下面以淘宝网为例子,为大家讲解下css sprites是如何实现的。如我们要在网页上显示“今日淘宝活动”这个图片。

  


 

  实现代码:

        <div style="width:107px; height:134px; background:url(sprites.gif) no-repeat -133px -153px"></div>

  width:要定位图片的宽度。height:要定位图片的高度。(css sprites必须定义容器的大小,不然会显示出错)

  background:url(sprites.gif)背景图片的路径。 no-repeat:背景不重复。 -133px:X坐标的位置 ,-153px:y坐标的位置。

  可能有人会不明白这个-133px 和-153px是怎么来的,这个坐标是小图片在大图片中的x坐标和y左边坐标,如下图,红色点的坐标是在大图上x坐标为133px y坐标为153px。(坐标也可以用百分比表示,如:50% 50%)有人会提出,为什么坐标是正数,你却写成了负数呢?因为用background这种方式定义背景图片,默认x y坐标是0 0。如下图今日淘宝活动图片的坐标是133px 153px,所以要用-133px -153px来归零才能正确的显示图片。

  


 

  css sprites的优点:可以减少http的请求数,如10张单独的图片就会发出10次的http请求,合成为一张的大图片,只会发出一次的http请求,从而提高了网页加载速度。

  css sprites的缺点:凡事有利必有弊端。可能有人喜欢,有人不喜欢,因为每次图片改动都要往这张图片添加内容,图片的坐标定位要很准确会,会稍显繁琐。坐标定位要固定为某个绝对值,因此会失去如center的一些灵活属性。

  css sprites有优点也有缺点。要不要使用,具体要看网页以加载速度为主还是以维护方便容易为主。

时间: 2024-12-27 17:55:10

利用css sprites减少图片请求的相关文章

网页提速之:利用css sprites减少图片请求

在高举"用户体验"为中心的网络时代,你是否因为打开网页速度太慢而关闭网页呢?相信很多人的答案都是肯定的.在高速的网络时代,千万不要挑战广东网民的耐心,不然只会导致网民远离你的网站而去. 网页提速有很多的方法,其中一条就是减少http请求.每一个网站都会用到图片,当一个网站有10张单独的图片,就意味着在浏览网站时会向服务器提出10次http请求来加载图片.下面为大家介绍减少图片请求的方法. css sprites:网站前端开发者大多称之为"css精灵",通俗的理解就是

网页提速:利用css sprites减少图片请求

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 在高举"用户体验"为中心的网络时代,你是否因为打开网页速度太慢而关闭网页呢?相信很多人的答案都是肯定的.在高速的网络时代,千万不要挑战广东网民的耐心,不然只会导致网民远离你的网站而去. 网页提速有很多的方法,其中一条就是减少http请求.每一个网站都会用到图片,当一个网站有10张单独的图片,就意味着在浏览网站时会向服务器提

如何使用CSS sprites减少HTTP请求

CSS sprites是指把网页中很多小图片(很多图标文件)做成按规律排列的一张大图上,在显示的时候通过background-image.background-position显示图片特定部分达到和分散的一张张小图片一样的效果   sprites是鬼怪,小妖精,调皮鬼的意思,初听这个高端洋气的名字我被震慑住了,一步步掀开其面纱后发觉很简单的东西,作用却很大 神马是CSS 小妖精 CSS sprites是指把网页中很多小图片(很多图标文件)做成按规律排列的一张大图上,在显示的时候通过backgro

css sprites方法减少图片请求来提高加载速度

我记得雅虎的提高网站加载速度的16条军规中有一条是尽可能的减少http请求数来提高网页加载速度.于是,诞生了使用css sprites方法减少图片请求. css sprites:网站前端开发者大多称之为"css精灵",通俗的理解就是:将多张小图片合成为一张大图片,减少http请求次数而达到网页提速.下面以淘宝网为例子,为大家讲解下css sprites是如何实现的.如我们要在网页上显示"今日淘宝活动"这个图片.   实现代码: <div style="

用PHP在服务端合并多个JS和CSS文件减少HTTP请求,提高速度

HTML:  代码如下 复制代码 <link rel="stylesheet" type="text/css" href="cssmin.php?get=base,style1,style2,global&path=css/&v=20131023" /> <script type="text/javascript" src="jsmin.php?get=jquery-1.6.4.mi

CSS Sprites技术及图片优化

关于CSS Sprites技术的优化我们能做到多少,能减多少的请求数量.这并且不是单方面能做到的,一切取决于XHTML.CSS.CSS Sprites图片之间的配合.现时为止没有绝对优化的做法,这也是我在项目中经常衡量CSS Sprites图片与XHTML关系,如:<一张背景实现自适应九宫格>,以下总结了图片切割术与图象优化的一些方法. 图片优化 对于非动画的GIF更建议使用PNG8因为它同样能做到一样的效果,而且能为你节省10%-30%的文件体积. Photoshop相比起Fireworks

减少HTTP请求之将图片转成二进制并生成Base64编码,可以在网页中通过url查看图片(大型网站优化技术)

原文:减少HTTP请求之将图片转成二进制并生成Base64编码,可以在网页中通过url查看图片(大型网站优化技术) 在网站开发过程中,对于页面的加载效率一般都想尽办法求快.那么,怎么让才能更快呢?减少页面请求 是一个优化页面加载速度很好的方法.上一篇博文我们讲解了 "利用将小图标合成一张背景图来减少HTTP请求",那么,这一篇博文将讲解  " 将图片转成二进制并生成Base64编码,可以在网页中通过url查看图片". 一.为何选择将图片转成二进制并生成Base64编

利用CSS、JavaScript及Ajax实现图片预加载的方法_javascript技巧

预加载图片是提高用户体验的一个很好方法.图片预先加载到浏览器中,访问者便可顺利地在你的网站上冲浪,并享受到极快的加载速度.这对图片画廊及图片占据很大比例的网站来说十分有利,它保证了图片快速.无缝地发布,也可帮助用户在浏览你网站内容时获得更好的用户体验.本文将分享三个不同的预加载技术,来增强网站的性能与可用性. 实现图片预加载可以使用css.JavaScript.Ajax三种方法.下面分别介绍这些方法的实现. 使用CSS 单纯的使用css可以将图片加载到页面元素的背景上,这种方法简单.高效: #d

利用css实现图片等比例缩放

  随着智能手机的增多,手机网站也可以做的更加个性化,最近在改版自己的手机网站 这其中,遇到了网站图片尺寸问题,手机屏幕都比较小,怎么让上传的规则不一的图片在手机上显示的更加美观呢? 那就利用css的强大功能吧. 先附上代码: img { max-width:500px; myimg:expression(onload=function(){ this.style.width=(this.offsetWidth > 500)?"500px":"auto"} )