图片IMG与容器下边界有空隙的解决方法

来源:互联网 发布:淘宝申请假冒品牌退货 编辑:程序博客网 时间:2024/04/29 18:27
第一,给图片img 标签display:block 
img{display:block} 
第二,定义容器里的字体大小为0。div { width:110px; border:1px solid #000000; font-size:0 } 
第三,定义图片img 标签vertical-align:bottom,vertical-align:middle,vertical-align:top 
img{vertical-align:bottom} 
其他还有把图片下边距设为负值和改写 HTML标签的排列。我觉得前三种就完全可以解决了。   
造成图片在IE下与容器下边界有空隙的原因 
在网上搜了一下,发现 old9 说的图片文字等 inline 元素默认是和父级元素的 baseline 对齐的,而 baseline 又和父级底边有一定距离(这个距离和 
font-size,font-family  相关,不一定是  5px),所以设置  vertical-align:top/bottom/text-top/text-bottom  都可以避免这种情况出现。而且不光 li,其
他的 block 元素中包含 img 也会有这个现象。至于这里的 HTML 属性 align="center"(对于图片浏览器会处理成 align="middle"),就相当于
vertical-align:middle;  所以道理也是一样的,只要vertical-align不取baseline,这个空隙就消失了。 
相关评论 
1.ie的显示有几种模式,在html 文档的开始部分声明<!DOCTYPE ....>   
如果声明为strict 模式,ie 以w3c的方式显示文档,而w3c的标准里面<img />默认是一个inline 的标签,除非自己显式的声明为  block 
2.那个空隙是ie针对盒模型默认的line-height 和 font-size.  给img desplay:block;虽然能解决问题,但没从结构上来考虑.可谓治标不治本.   
当设置为vertical-align:sub的时候他的上边界会有空隙,当设置为 vertical-align:super 和baseline 的时候他的下边界有空隙。
原创粉丝点击