HTML 5奇怪的IMG总是在底部添加3px的边距

当我将我的网站更改为

<!DOCTYPE HTML>

每个封装在DIV中的img元素都有一个3px的底部边距,即使该边距未在CSS中定义。 换句话说,没有导致3px底部边距的样式属性。

<div class="placeholder">
    <img alt="" src="/haha.jpg" />
</div>

现在我们假设haha.jpg是50x50,并且.placeholder设置为显示:table。 奇怪的是,我的观察中.placeholder的高度尺寸是50x53 ...

有没有人遇到过这种异常,并修复它?

编辑

这是JS FIDDLE

http://jsfiddle.net/fRpK6/


这个问题是由于图像的行为类似于文本的字符(因此在“y”或“g”的悬挂部分所在的位置下面留下空间),并且通过使用vertical-align CSS属性来解决表明不需要这样的空间。 几乎任何vertical-align值都可以; 我个人喜欢middle

img {
    vertical-align: middle;
}

jsFiddle:http://jsfiddle.net/fRpK6/1/


我经常通过给图像元素display:blockdisplay:inline-block来解决这个问题。


它解决了我的问题。

line-height: 0;
链接地址: http://www.djcxy.com/p/87773.html

上一篇: HTML 5 strange img always adds 3px margin at bottom

下一篇: Why would margin not be contained by parent element?