视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
关于CSS的图像拼合技术
2020-11-27 18:48:33 责编:小采
文档

这篇文章主要介绍了关于CSS的图像拼合技术 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

图像拼合就是单个图像的集合。

有许多图像的网页可能需要很长事件来加载和生成多个服务器的请求。

使用图像拼合会降低服务器的请求数量,并节省带宽。

图像拼合--创建一个导航列表

<!DOCTYPE html>
<html>
	<head>
	<title>自学教程(如约智惠.com)</title>
	<meta charset="utf-8">
	<style>
	#navlist {position:relative;}
	
	#navlist li{
	margin:0px;
	padding:0px;
	list-style:none;
	position:absolute;
	top:0px;
	}
	
	#navlist li, #navlist a{
	height:44px;
	display:block;
	}
	
	#home {
	left:0px;
	width:46px;
	background:url('./images/img_navsprites.gif')0 0;
	}
	
	#prev {
	left:63px;
	width:43px;
	background:url('./images/img_navsprites.gif')-47px 0;
	}
	
	#next {
	left:129px;
	width:43px;
	background:url('./images/img_navsprites.gif')-91px 0;
	}
	
	</style>
	</head>
	<body >
	<ul id="navlist">
	 <li id="home"><a href="/"></a></li>
	 <li id="prev"><a href="/css/"></a></li>
	 <li id="next"><a href="/css/"></a></li>
	</ul>
	</body>
</html>

实例解析:

  • #navlist{position:relative;} - 位置设置相对定位,让里面的绝对定位

  • #navlist li{margin:0;padding:0;list-style:none;position:absolute;top:0;} - margin和padding设置为0,列表样式被删除,所有列表项是绝对定位

  • #navlist li, #navlist a{height:44px;display:block;} - 所有图像的高度是44px

  • 现在开始每个具体部分的定位和样式:

  • #home{left:0px;width:46px;} - 定位到最左边的方式,以及图像的宽度是46px

  • #home{background:url(img_navsprites.gif) 0 0;} - 定义背景图像和它的位置(左0px,顶部0px)

  • #prev{left:63px;width:43px;} - 右侧定位63px(#home宽46px+项目之间的一些多余的空间),宽度为43px。

  • #prev{background:url('img_navsprites.gif') -47px 0;} - 定义背景图像右侧47px(#home宽46px+分隔线的1px)

  • #next{left:129px;width:43px;}- 右边定位129px(#prev 63px + #prev宽是43px + 剩余的空间), 宽度是43px.

  • #next{background:url('img_navsprites.gif') no-repeat -91px 0;} - 定义背景图像右边91px(#home 46px+1px的分割线+#prev宽43px+1px的分隔线)

  • 图像拼合--悬停效果

    <!DOCTYPE html>
    <html>
    	<head>
    	<title>自学教程(如约智惠.com)</title>
    	<meta charset="utf-8">
    	<style>
    	#navlist {position:relative;}
    	
    	#navlist li{
    	margin:0px;
    	padding:0px;
    	list-style:none;
    	position:absolute;
    	top:0px;
    	}
    	
    	#navlist li, #navlist a{
    	height:44px;
    	display:block;
    	}
    	
    	#home {
    	left:0px;
    	width:46px;
    	background:url('./images/img_navsprites_hover.gif')0 0;
    	}
    	
    	#home a:hover {
    	background:url('./images/img_navsprites_hover.gif')0 -45px;
    	}
    	
    	#prev {
    	left:63px;
    	width:43px;
    	background:url('./images/img_navsprites_hover.gif')-47px 0;
    	}
    	
    	#prev a:hover {
    	background:url('./images/img_navsprites_hover.gif')-47px -45px;
    	}
    	
    	#next {
    	left:129px;
    	width:43px;
    	background:url('./images/img_navsprites_hover.gif')-91px 0;
    	}
    	
    	#next a:hover {
    	background:url('./images/img_navsprites_hover.gif')-91px -45px;
    	}
    	
    	</style>
    	</head>
    	<body >
    	<ul id="navlist">
    	 <li id="home"><a href="/"></a></li>
    	 <li id="prev"><a href="/css/"></a></li>
    	 <li id="next"><a href="/css/"></a></li>
    	</ul>
    	</body>
    </html>

    实例解析:

  • 由于该列表项包含一个链接,我们可以使用:hover伪类

  • #home a:hover{background: transparent url(img_navsprites_hover.gif) 0 -45px;} - 对于所有三个悬停图像,我们指定相同的背景位置,只是每个再向下45px

  • 下载本文
    显示全文
    专题