【发布时间】:2014-07-20 05:43:40
【问题描述】:
我不知道为什么最简单的表格单元示例会惨遭失败(在 FF29 中)。请看http://jsfiddle.net/aYWG9/:
<body>
<table style="border-spacing:0">
<tr>
<td style="background:red;padding:0;margin:0;border:0">
<img src="http://rufiojones.files.wordpress.com/2011/08/foghorn_leghorn.gif"/>
</td>
</tr>
</table>
</body
额外的 5px 是从哪里来的,我该如何去除红色空间? (别叫我改颜色!)
【问题讨论】:
-
不仅在 FF 中。我在 Chrome 中也看到了红色空间。不知道它是从哪里来的。
-
默认情况下,
<img>是一个内联元素,因此需要为字母的 descender 部分留出空间,如果这样做,img { display:block }将修复问题,并使 img 表现得像块级元素。 developer.mozilla.org/en/docs/… 是一篇很老的文章,但对问题的解释更详细一些。 -
@NickR 这本来是一个不错的答案,但现在重点是安迪。
-
display: block也是一种解决方案。有一点不同,在单元格中添加其他内容会导致它出现在图像下方。
标签: html css html-table cell