首先看下面的 CSS 代码:
li#nav-home a { background:url(../images/navs.png) no-repeat; }
li#nav-about a { background:url(../images/navs.png) 0 -28px no-repeat; }
li#nav-work a { background:url(../images/navs.png) 0 -56px no-repeat; }
li#nav-services a { background:url(../images/navs.png) 0 -84px no-repeat; }
li#nav-contact a { background:url(../images/navs.png) 0 -112px no-repeat; }
li#nav-home a:hover { background:url(../images/navs.png) 0 -13px no-repeat; }
li#nav-about a:hover { background:url(../images/navs.png) 0 -41px no-repeat; }
li#nav-work a:hover { background:url(../images/navs.png) 0 -69px no-repeat; }
li#nav-services a:hover { background:url(../images/navs.png) 0 -97px no-repeat; }
li#nav-contact a:hover { background:url(../images/navs.png) 0 -125px no-repeat; }
li#nav-home a.active { background:url(../images/navs.png) 0 -13px no-repeat; }
li#nav-about a.active { background:url(../images/navs.png) 0 -41px no-repeat; }
li#nav-work a.active { background:url(../images/navs.png) 0 -69px no-repeat; }
li#nav-services a.active { background:url(../images/navs.png) 0 -97px no-repeat; }
li#nav-contact a.active { background:url(../images/navs.png) 0 -125px no-repeat; }
是不是看的眼花缭乱,不知所云,其实这段css很简单,就是实现所谓的 CSS Sprite 技术。
Why
利用CSS Sprites能很好地减少了网页的http请求,从而大大的提高了页面的性能。
传统的CSS结构,客户端每显示一张图片都会向服务器发送请求,所以,图片越多请求次数越多,造成延迟的可能性也就越大。
而 CSS Sprite 允许你将一个页面涉及到的所有零星图片都包含到一张大图中去,这样一来,当访问该页面时,只需要一次加载这个大图即可。
运用场景:
1. 图片限制
典型如文本编辑器,小图标特别多,打开时一张张跑出来,给用户的感觉很不好。如果能用一张图解决,则不会有这个问题。
2. 单图转滚(这就是前面那一大段CSS的用处)
触发切换图片的需求,传统方案得重新请求新图片,因为网络问题经常造成停留或等待。如果能把多种状态合并成一张图,就能完美解决。
3. 延长背景
如果图片的某边可以背景平铺无限延长,则不需要每个角、每条边单独搞出来,图片能少一个就少一个。其实,这个理论还可以扩展到四角容器里,好处是能大大简化HTML Structure。
How
CSS Sprite 其实就是 利用CSS的“background-image”,“background- repeat”,“background-position”的组合进行背景定位,background-position可以用数字能精确的定位出背景图片的位置。
background:url(../images/navs.png) 0 -13px no-repeat;
Notice
使用 CSS Sprite 要注意一点,IE6下偏移的位置于其他的浏览器不一致,可能需要单独为其设定不同的值,这个问题我遇到好几次了,只能说IE6太变态,连个背景图片的位置都跟别人不一样。
查看Demo,请点击这里
分享到:
相关推荐
CSS Sprite是一种网页图像整合技术,它能够有效地减少网页的HTTP请求,从而提高页面加载速度,降低服务器负担。在网页设计中,特别是在响应式设计中,CSS Sprite被广泛使用。本示例源码将深入探讨这一技术及其应用。...
**CSS Sprite技术详解** 在网页设计中,CSS Sprite(精灵图)是一种常见的优化网页加载速度的方法,它将多个小图像合并到一个大图中,通过CSS的定位来显示需要的部分。这种技术尤其适用于那些需要频繁加载的小图标...
CSS Sprite,也被称为精灵图或雪碧图,是一种在网页设计中广泛应用的优化图像加载的技术。它的主要目的是减少网页HTTP请求的数量,从而提高页面加载速度,优化用户体验。通过将多个小图标或者背景图片整合到一张大图...
CSS Sprite是一种网页图像优化技术,它将多个小图合并到一张大图中,减少HTTP请求,从而加快网页加载速度。这种技术在Web开发中被广泛使用,尤其在处理背景图像时,可以显著提升页面性能。标题提到的"css sprite ...
CSS Sprite是一种网页优化技术,用于减少HTTP请求的数量,从而提高页面加载速度。它将多个小图合并成一张大图(通常称为精灵图),然后通过CSS定位显示需要的部分。这种技术在网页设计和前端开发中广泛应用,尤其...
为了优化网页性能,提高页面加载速度,一种名为“CssSprite”(雪碧图)的技术应运而生。雪碧图是一种将多个小图标合并到一张大图中的方法,通过CSS定位来显示需要显示的部分,从而减少了HTTP请求的数量,进而提升了...
压缩包中的`CssSprite.exe`文件是一个可执行程序,很可能是上述开源项目编译后的Windows版本。使用这个程序,用户可以直接在命令行中输入命令,将一组图标文件合并为雪碧图,并自动生成相应的CSS代码,方便集成到...
CSS Sprite自动生成工具是一款可以导入CSS背景图片,就可以自动生成CSS sprite代码和一张整的CSS 贴图图片的工具,工具小巧方便,精确到1px,网格吸附。非常方便制作CSS sprite贴图。
在Web性能优化中,CSS Sprite技术是一种常见的方法,它将多个小图合并成一张大图(通常称为sprite图像),以此减少HTTP请求,提高页面加载速度。CSS Sprite Loader就是帮助开发者实现这一目标的利器。 ### CSS ...
Sketch-CSS-Sprite-Mixin, 在草图中,生成一个 CSS Sprite Mixin到剪贴板的代码 绘制 CSS Sprite MixinSketch中生成 scss,LESS 和手写笔的mixin的代码。 运行插件时,代码被复制到剪贴板。子画面名称是顶级图层名,...
行走动画是CSS3动画的经典类型之一,今天要分享的这款CSS3僵尸行走动画与之前介绍的纯CSS3人物行走动画和纯CSS3实现大象走路动画不同,它是利用CSS Sprite技术实现的,也就是在同一张图片中绘制僵尸行走的每一帧,...
"雪碧图工具CssSprite.exe"是一个专为生成雪碧图并自动生成对应的CSS代码而设计的软件,使得这一过程变得更加便捷高效。 在网页开发中,每个单独的小图都需要一个HTTP请求来获取,当页面中包含大量小图时,这些请求...
其中,一种常见的优化策略就是使用CssSprite技术,也就是我们常说的“雪碧图”。雪碧图是一种将多个小图标合并到一张大图中,然后通过CSS定位来显示需要的图标的方法。这样做的好处是可以减少HTTP请求的数量,从而...
CSS Sprite是一种网页图像优化技术,它将多个小图像合并到一张大图(组合图)中,然后通过CSS的背景定位来显示需要的部分。这样做的主要目的是减少HTTP请求次数,提高页面加载速度,优化用户体验。当你在网页设计中...
CSS Sprite,中文常称为“CSS精灵”,是一种常见的前端技术,用于优化网站加载速度和用户体验。它通过将多个小图片合并为一张大图,并借助CSS背景定位来实现原本需要多张图片才能完成的效果。这种方式能够显著减少...
css精灵图生成软件,自动生成,并给出小图的backgrount-positon的值。比较好用
【CSS3 Sprite僵尸行走动画特效】是一种利用CSS3的先进特性来实现的动态效果,它巧妙地结合了精灵图(Sprite)技术和CSS3的动画功能,以创建出一个逼真的僵尸行走循环动画。在Web开发中,CSS3 Sprite技术是为了减少...
CSS Sprite,又称为CSS雪碧图或CSS精灵,是一种常见的网页图像优化技术。在网页设计中,为了减少HTTP请求的数量,提高页面加载速度,设计师们通常会将多个小图像合并成一张大图,然后通过CSS定位来显示所需的图像...
为了简化这一过程,出现了各种CssSprite雪碧图制作工具。这些工具提供了便捷的界面和自动化处理,使得开发者能够轻松地将分散的图标整合成一张雪碧图,并自动生成相应的CSS代码。 1. **工具选择** - **在线工具**...
css sprite 雪碧图生成小程序,已在github上开源,地址:https://github.com/iwangx/sprite ,请需要的朋友注意版本更新,下载最新版。 博客园地址:http://www.cnblogs.com/wang4517/