制作网页时经常遇到图像过大而不能完全展示的麻烦,虽然我们可以将图片缩小,但缩小的图片着实难看。
其实有的时候我们不一定非要将图片缩小或替换,可以用CSS的一些属性来展现图像,反而更加生动有趣。
本文为您介绍一种利用CSS的溢出属性overflow来控制显示图像大小的方法。
这种方法的原理是:在网页中插入一个固定大小的区域,将图像插入到这个区域内,然后将区域以?外的内容全部隐藏掉。
如上图所示,图片在区域中是居中的,<a>区域内是要显示的内容,<img>灰色区域是隐藏掉的。下面开始制作:
Html代码:
<ul id="thumbs">
<li><a href="http://dreamweaver.abang.com"><img src="image.jpg" /></a></li>
<li><a href="http://dreamweaver.abang.com"><img src="image.jpg" /></a></li>
<li><a href="http://dreamweaver.abang.com"><img src="image.jpg" /></a></li>
<li><a href="http://dreamweaver.abang.com"><img src="image.jpg" /></a></li>
<li><a href="http://dreamweaver.abang.com"><img src="image.jpg" /></a></li>
</ul>
img{
border:none;
}
ul#thumbs, ul#thumbs li{
margin:0;
padding:0;
list-style:none;
}
ul#thumbs li{
float:left;
margin-right:5px;
border:1px solid #999;
padding:2px;
}
ul#thumbs a{
display:block;/*此处使链接变为块状显示,才可以定义宽和高*/
float:left;
width:100px;
height:100px;
line-height:100px;
overflow:hidden;/*定义区域外隐藏*/
position:relative;/*相对对位*/
z-index:1; /*Z轴处于1的位置,为鼠标悬浮时做铺垫*/
}
ul#thumbs a img{
float:left;
position:absolute;/*让图像居中显示的定义部分,包括下面top、left的两处定位*/
top:-20px;/**/
left:-50px; /**/
}
ul#thumbs a:hover{ /*此处最为重要,当鼠标移动到图像上时,让图像显示,Z轴位置为1000置于最上面*/
overflow:visible;
z-index:1000;
border:none;
}