Css Sprite(雪碧图、精灵图)

时间:2022-11-21 22:54:13

一、精灵图使用场景:

Css Sprite(雪碧图、精灵图)

二、Css Sprite(优点)

  1. 减少图片的字节。
  2. 减少网页的http请求,从而大大的提高页面的性能。
  3. 解决了网页设计师在图片命名上的困扰,只需对一张集合的图片上命名就可以了,不需要对每一个小元素进行命名,从而提高了网页的制作效率。
  4. 更换风格方便,只需要在一张或少张图片上修改图片的颜色或样式,整个网页的风格就可以改变。维护起来更加方便。

三、实现原理

css background-position

控制一个层可显示的区域范围大小,
通过一个窗口进行背景图的滑动
实例:
Css Sprite(雪碧图、精灵图)

代码如下:

<!doctype html>
<html>
    <head>
        <meta charset="utf-8"/> <title>background-position<</title> <link rel="stylesheet" href="index.css"/> </head> <body> <span class="oo span1"></span> <span class="oo span2"></span> <span class="oo span3"></span> <span class="pp span4"></span> <span class="ll span5"></span> <span class="hh span6"></span> </body> </html> .body{ margin:0 auto; text-align:center; } .oo{ display:block; width:43px; height:44px; background:url(images/img_navsprites_hover.gif) no-repeat; margin:20px auto; } .span1{ background-position:0 0; position:absolute; top:0px; } .span2{ background-position:-47px 0; position:absolute; top:0px; left:60px; } .span3{ background-position:-94px 0; position:absolute; top:0px; left:120px; } .span1:hover{ background-position:0 -45px; } .span2:hover{ background-position:-47px -45px; } .span3:hover{ background-position:-94px -45px; } .pp{ display:block; width:38px; height:38px; background:url(images/pwd-icons-new.png) no-repeat; margin:20px auto; } .span4{ background-position:-48px -96px; } .ll{ display:block; width:24px; height:26px; background:url(images/TB1eiXTXlTH8KJjy0FiXXcRsXXa-24-595.png) no-repeat; margin:20px auto; } .span5{ background-position:0 -483px; } .hh{ display:block; width:18px; height:18px; background:url(images/toolbars.png) no-repeat; margin:20px auto; } .span6{ background-position:-95px -211px; }

**background-position:npx npx;
(第一个值是调左右的,当你需要将背景图向右调的时候用正值, 向左则为负值 同理将背景图上下调动的时候上是用负值,下是正值)**
<2>效果图如下:
(这是原图)Css Sprite(雪碧图、精灵图)

(这是选完以后的图)
Css Sprite(雪碧图、精灵图)

第一幅图是原图与暗图的转换;选了第二幅图的锁;第四幅图的火车;第五幅图的小人。

刚入前端写的不好见谅!!!(^o^)/~