不定宽高div内图片垂直居中的css样式


最简单的方法莫过于设置外层元素的css属性:

复制代码
代码如下:

div{
display: table-cell;
}

但是IE6/7并不支持这个css样式,为了兼容它们可以采用下面的方法。

html的结构如下:

复制代码
代码如下:

<div><span></span><img src="test.png" alt=""></div>

css代码如下:

复制代码
代码如下:

div{
width: 100px;
height: 100px;
border: 1px solid #ccc;
}
span{
line-height: 100%;
vertical-align: middle;
display: inline-block;
height: 100%;
}
img{
width: 100%;
vertical-align: middle;
}

通过设置以上属性可以达到下图的效果,图片在div中垂直居中。
 
这个方法的原理是在img标签前面插入一个空的span标签,利用它来撑开div内的行高到100%。
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3