在ie6中,当文字和img、input、textarea、select、object等对象在同一个容器中的时候,line-height属性失效。只有全文字时,line-height属性才有效。
ie7已经解决了这个bug,之前版本的ie会将有图片行的行高减小为原来的一半。可以通过设置图片样式表
.box img {
vertical-align: middle;
margin: 10px 0;
}
其中10px是容器(box)的行高减去图片高度后的一半。
解决IE6下,给图片加上line-height属性不起作用的解决方法
在css设置中,我们一般用行高line-height来设定某一行的高度,这在ie7与firefox等浏览器都适用。但当行中有其他元素时(如图片,SPAN,li..)在IE6.0下line-height会不起效果,后来查了下资料,果然如此,资料如下:当在一个容器里文字和img、input、textarea、select、object等元素相连的时候,对这个容器设置的line-height数值会失效; 同时以上元素的行高可能×2:
受影响的浏览器:
Microsoft Internet Explorer 5.01 / Windows
Microsoft Internet Explorer 5.5 / Windows s
Microsoft Internet Explorer 6
解决方法:
对和文字相连接的img、input、textarea、select、object等元素加以属性
margin: (所属line-height-自身img,input,select,object高度)/2px 0;
vertical-align:middle
示例如下:
原代码如下:
代码如下:
.shouchang{width:200px;float:left;line-height:24px;}
现代码如下:
.shouchang{width:200px;float:left;line-height:24px;}
.shouchang img{margin:3px 0;vertical-align:middle}
2.如果整个页面中有很多Img时,可以直接定义
img{
margin: (所属line-height-自身img,input,select,object高度)/2px 0;
vertical-align:middle
}
这样问题就可以解决!