创新易联欢迎您!16年高端网站建设品牌

未知高度的图片垂直居中

日期:2014-08-29 | 来源:易联网站建设公司 | 阅读:

图片的宽度和高度是未知的,没有一个固定的尺寸,在这个前提下要使图片在一个固定了宽度和高度的容器中垂直居中,想想感觉还是挺麻烦的,由于最近的项目可能会用到这个方案,所以把一些常用的方法都收集整理了一下。

下图是理想中的效果图,外部容器的宽度和高度是固定的,中间的图片宽度和高度未知,但是图片要始终要相对于外部的容器垂直居中。

 

但是实际中实现的效果并不是很完美,由于各浏览器的解析都各不相同,所以各浏览器都会有1px-3px的偏差。

方法一 (XHTML 1.0 transitional):

该方法是将外部容器的显示模式设置成display:table,img标签外部再嵌套一个span标签,并设置span的显示模式为display:table-cell,这样就可以很方便的使用vertical-align象表格元素那样对齐了,当然这只是在标准浏览器下,IE6/IE7还得使用定位。

HTML结构部分:

<div id="box">
    <span><img src="images/demo.jpg" alt=""></span>
</div>
CSS样式部分:

<style type="text/css">
#box{
width:500px;height:400px;
display:table;
text-align:center;
border:1px solid #d3d3d3;background:#fff;
}
#box span{
display:table-cell;
vertical-align:middle;
}
#box img{
border:1px solid #ccc;
}
</style>
<!--[if lte IE 7]>
<style type="text/css">
#box{
position:relative;
overflow:hidden;
}
#box span{
position:absolute;
left:50%;top:50%;
}
#box img{
position:relative;
left:-50%;top:-50%;
}
</style>
  <![endif]-->
    创新互联——八年品牌 行业十强!我们专注于深圳网站建设,深圳网页设计策划服务,主要客户有:青青世界、华侨城地产、观澜高尔夫、深圳机场、华润保险、安琪、清华同方、金碟软件等等国内外500强知名企业!
        8年来,公司立足深圳面向华南,作为
深圳网站建设深圳网站设计深圳网站制作、知名的深圳网络公司深圳网站建设公司服务提供商,凭借过硬的技术开发及安全保障实力、专业的全方位解决方案一举获得客户的认可。

—— 微信公众号 ——

热门标签