CSS布局中,未知大小图片的垂直居中,一直是比较头疼的问题,标准浏览器只要设定容器的line-height和图片的vertical-align:middle;就可以了,但对IE没用,几个月前在国外网站看到了一则对IE的解决方法,感觉不是很理想,也没当回事。最近看到经常有朋友在问类似的问题,又把代码翻了出来,针对IE改了下。
代码如下 | 复制代码 |
CSS .box{ height:140px; width:200px; border: solid 1px #666; text-align:center;/*水平居中*/ line-height:140px; font-size:126px;/*IE靠这垂直居中*/ } .box[class]{ font-size:12px;/*标准浏览器需要这个数值*/ } img{ vertical-align:middle;/*标准浏览器图片垂直居中*/ } |
原先老外代码的font-size是和高度相同,试下来容器的高度要比标准浏览器高一截,多次尝试将字体尺寸大小减去了百分之十容器的高度,这样一来,看起来差不多。至于什么原因还不清楚.
在IE5.5、IE6.0、FF1.5、Opera9.0下测试成功,对IE5.0和IE7.0无效。