首頁  >  文章  >  php教程  >  css中使用一张图片显示多个背景

css中使用一张图片显示多个背景

WBOY
WBOY原創
2016-06-07 17:23:421354瀏覽

     不知你有没有经历过,看到网页上的一些漂亮的图标,如列表图标,于是把它下载,打开一看,竟然不是我们下载的单个图标,而是一张大图,上面集合着许多小图标!
这里便使用了CSS中一张图片显示多个背景的方法
这些小图标为什么不是分别存储成单独的图标,而是集合放在一张图片上?这样做的目的就是减少http请求次数,节省时间和带宽。
强烈推荐使用这种方法!
当然,实现的方法是有多种,下面将通过一个例子来说一下我常使用的方法。
1、显示完整的图片

如图(1)

css中使用一张图片显示多个背景

代码:

<style type="text/css">  
<!--  
.bg{ 
WIDTH: 181px; 
HEIGHT: 61px; 
} 
.bg .logo { 
POSITION: relative; WIDTH: 181px; BACKGROUND: url(./logo.gif) 0px 0px; FLOAT: left; HEIGHT: 60px; 
} 
} 
--> 
</style>  
<body> 
<div class="bg"> 
<div class="logo"></div> 
</body>

关键代码:

POSITION: relative; WIDTH: xpx; BACKGROUND: url(image) x1px y1px; FLOAT: left; HEIGHT: ypx;

POSITION属性说明:
relative--相对定位
WIDTH--图片显示的宽度
image --背景图片(这里是图片的地址)
x1px--图片水平位置偏移量,起点为(0,0),如取负值将向反方向偏移
y1px---图片竖直位置偏移量
FLOAT--图片浮动方向,如left,right
HEIGHT--图片显示的高度

现在我们将在上面的位置为参照物显示图片不同区域。
1.1、只显示图片中的“W‘

如图(2):

css中使用一张图片显示多个背景

图示显示部分WIDTH: 75px,HEIGHT: 60px,图片水平向左偏移3px.代码:

.bg .logo { 
      
    POSITION: relative; WIDTH: 75px; BACKGROUND: url(./logo.gif) -3px 0px; FLOAT: left; HEIGHT: 60px; 
      
}

1.2、只显示图片中的一个“B“,如图(3)

css中使用一张图片显示多个背景
图示显示部分WIDTH: 38px,HEIGHT: 60px,图片水平向左偏移78px,竖直向下偏120px,代码:

.bg .logo { 
    POSITION: relative; WIDTH: 38px; BACKGROUND: url(./logo.gif) -78px 120px; FLOAT: left; HEIGHT: 60px 
}



陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn