DIV中图片垂直居中的css样式

众所周知,图片的水平居中比较简单,但是图片的垂直居中比较麻烦一些,今天查阅了资料并自己写了测试代码,来实现兼容IE,FF,chrome等主流浏览器的图片在div中的垂直居中的方法。

css样式代码如下:

<style type="text/css">
            *
{
                margin
:  0;
                padding
:  0
            
}
            div 
{
                width
:  210px;
                height
:  210px;
            
}
            .attention 
{
                color
:  red;
                font-weight
:  bold;
            
}
            .example1 
{
                background
:  blue;
            
}
            .example2 
{
                background
:  green;
                display
:  table-cell;
                vertical-align
:  middle;
            
}             
            .example2 img 
{
                vertical-align
:  middle;
            
}
            .example3 
{
                background
:  yellow;
                display
:  table-cell;
                vertical-align
:  middle;
                *font-size
:  183px;
            
}
            .example3 img 
{
                vertical-align
:  middle;
            
}  
 </style>

        

然后html代码如下:

< h3 >图片在div中正常显示,例子中div的尺寸均为210px*210px,图片为210px*158px </ h3 >
         < class ="attention" >这里为了专门验证DIV中的图片垂直居中,特地将DIV的宽度设置成同图片宽度一样;图片的水平居中较简单,可以设置div{text-align:center} </ p >
         < div  class ="example1" >
             < img  src ="http://img01.taobaocdn.com/bao/uploaded/i1/T1FOl6XghEXXcn5fYb_094058.jpg_210x210.jpg" />
         </ div >
         < h3 >图片在div中居中显示,设置div{display:table-cell;vertical-align:center} div img {vertical:middle} </ h3 >
         < class ="attention" >在IE8,chrome18,firefox12下测试通过,IE6/7均不通过 </ p >
         < div  class ="example2" >
             < img  src ="http://img01.taobaocdn.com/bao/uploaded/i1/T1FOl6XghEXXcn5fYb_094058.jpg_210x210.jpg" />
         </ div >
         < h3 >图片在div中居中显示,设置IE hack,加上一句 *font-size:183px来hack </ h3 >
         < class ="attention" >183 = 210*0.875,为什么乘这个0.875,原理不知,有待补充,目前由前人经验得来。IE6/7也能通过。 </ p >
         < div  class ="example3" >
             < img  src ="http://img01.taobaocdn.com/bao/uploaded/i1/T1FOl6XghEXXcn5fYb_094058.jpg_210x210.jpg" /> </div> 

 

       

有问题可以给我留言! 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值