做网页的人,有时候会碰到这样的问题,图片与容器之间有个空白死活无法去掉,而且明明没有任何的字符,也没有设置margin/padding等等,这是为神马呢?
迄今为止我碰到过两种情况会导致这种问题:
- DOCTYPE为在HTML4或者XHTML1.0(过渡)
在IE浏览器中会发生,原因是图片后面有”空格”,这里的空格并非指 ,而是就是普通的空格,也就是说图片标签的结束没有紧紧地贴住容器的结束标签。 - DOCTYPE为HTML5
在所有浏览器都一样,图片与容器间有几个像素的空白。
通常这种问题有几种解决方法:
- 设置容器的font-size:0
- 设置容器的高度然后来个overflow:hidden
- 设置图片的display:block
- 设置图片的float:left
- 设置图片的vertical-align: middle(貌似top/bottom之类的也可)
以上几种方法中,本人最常用的是4、5两种,但是更推荐用”5. 设置图片的vertical-align”,因为目前看来还没有什么后遗症,相对稳定些吧。