5

所以我刚刚失去了生命中的几个小时试图赢得这场战斗,但没有运气。总之,我试图用三个 10 像素的图像填充一个表格,但 GMail 强制每个单元格为 16 像素。这是我正在使用的内容:

<table border="0" cellpadding="0" cellspacing="0" width="550" style="height:10px !important">
    <tr style="height:10px" height="10">
    <td width="10" height="10" style="height:10px !important">
        <img src="http://s3.amazonaws.com/meagain/images/templates/letterhead/corner_tl.gif" style="display:inline; padding: 0px; margin:0px" width="10px" height="10px"></td>
    <td width="531" height="10" style="height:10px !important; background-color:#FFFFFF;">
        <img src="http://s3.amazonaws.com/meagain/images/templates/letterhead/spacer.gif" style="display:inline; padding: 0px; margin:0px" width="10px" height="10px"></td>
    <td width="9" height="10" style="height:10px !important">
        <img src="http://s3.amazonaws.com/meagain/images/templates/letterhead/corner_tr.gif" style="display:inline; padding: 0px; margin:0px" width="9px" height="10px"></td>
    </tr>
</table>

我很抱歉有这么多多余的属性,因为我一直在尝试一切。基本上,我试图让桌子正好高 10 像素。然而,无论如何,GMail 将其设为 16px 高。如果我使用开发人员工具直接从源代码中删除所有三个图像,那么表格将折叠到 10px。此外,如果我删除三张图片中的两张,它仍然保持 16 像素。如果 TD 包含图像,则几乎就像 TD 必须为 16px,或者图像周围有 3px 的填充。

有没有人经历过这样的事情?如果是这样,有什么想法吗?我的想法和理智已经用完了..

4

5 回答 5

10

就像 Herbie 说的,确保你在 TD 上设置了 line-height。

还要确保您设置了字体大小,因为 gmail 可能会根据该单元格中的空格字符设置 TD 的最小高度。一般来说,在没有任何文本的单元格中设置 1px 的字体大小是一种很好的做法。

看起来这是用于创建 html 电子邮件,对吗?看看这个是否有任何其他问题 - 它帮助了我很多次http://www.emailology.org/#1http://www.campaignmonitor.com/resources/以获取提示。

于 2012-02-12T09:35:01.220 回答
4

我还不能评论,所以我会发布作为答案......

16px 听起来像一个行高值。您是否尝试过将每个 TD 的 line-height 设置为 10px 或将每个 IMG 从 inline 更改为 inline-block?

于 2012-02-12T06:55:19.613 回答
3

我试图找出你的解决方案。

这是文字解决方案,将其放在您的 TD 标签中:

style="line-height:0"
于 2012-08-15T20:18:11.807 回答
2

在你的<img>标签中,你可以把这个:

 style="display:block;" 

...或者您可以将高度设置为max-height. 它应该可以解决您的问题。

于 2012-11-30T03:10:21.823 回答
0

在 html -<img>标签不是块标签,所以我们需要使用以下 css 让它像块标签一样工作

style="display:block;"

使用这个 css,您给定的高度将在您的 HTML 页面上完美运行。

试一次!

于 2015-11-24T06:19:04.150 回答