display:inline-block的实际应用

前面一篇博文有讲关于display:inline-block在FF出现空白的解决方案,这篇博文主要讲解下display:inline-block的实际应用。

 

应用一如下图所示。当固定宽度,固定高度,向左浮动float:left就解决了。但是,这个设计中内容是可变的,也就意味着当内容增多,高度不一就会破坏这个布局。

你也许会想到每一行三个放在一个UL里,然后程序员3*N的循环,现在用display:inline-block来解决这个问题

 

 

 

	<ul class="imgList">
	<!--循环开始-->
	<li>
	<div class="imgList_pic"><img src="images/1.jpg" alt="图片信息"/></div>
	<div class="imgList_picTitle">照片名称照片</div>
	</li>
	<!--循环结束-->
	</ul>

 

ul,li{margin:0px;
      padding:0px;
 }
.imgList{margin:16px 16px 0px;
width:530px;
height:1%;
overflow:hidden;
font-size:12px;   
letter-spacing:-6px;
}	   
.imgList li { display: -moz-inline-stack;
display:inline-block;
*display:inline;
zoom:1;
width:130px;
text-align:center;
margin:0px 22px 12px;
list-style:none;
vertical-align:top;
letter-spacing:0; /* 解决FF下display:inline-block产生空白边*/
}		  
.imgList_pic{width:126px;
height:126px;
border:1px solid #DEE7D2;
display:table-cell;
vertical-align:middle;
/* 针对IE的Hack */
*display:block; 
*font-size:110px;
*font-family:Arial;
/* 让未知大小的图片在固定容器里垂直居中对齐*/}
.imgList_pic img{vertical-align:middle;}
.imgList_picTitle{font-weight:700;
 line-height:20px;
text-align:left;
margin-top:4px;
}

 可以参考附件里的dome1.html文件

 

应用二 ,有时你会遇到只要单独的icon而不需要文字或者链接,并且是图文混排的效果,我们经常会想到删除span里的文字然后用全角空格来解决,出现这样的代码<a href="#" class="icon"><span> </span></a>这也许会在后期开发过程不知何物,现在用inline-block就可以解决这个问题。

<a href="#" class="icon"><span>MSN</span></a>

 

.icon{
display:inline-block;
display:-moz-inline-stack;
/* firefox2,-moz-inline-box其实也可以,但在某些情况下会有些异常*/
*display:inline;
zoom:1;
width:16px;
height:16px;
vertical-align:middle; /* 这个用来对opera的hack,使其垂直居中 */
overflow:hidden; /* 针对ie,防止内容溺出,造成的高度及宽度改变 */
background:url("images/msn.gif") no-repeat left center;
}
.icon span{
visibility:hidden; /* 将解释性文字隐藏 */
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值