如果我在Gmail或Outlook中打开以下HTML电子邮件,则会按以下方式呈现:
<img src="img.png" />
但是,如果我在Outlook中打开它然后将其转发到Gmail,它会添加额外的垃圾HTML,使得该区域比它应该更高('p'标签负责增加的高度 - 具体为3px):< / p>
<p class="MsoNormal">
<span style="font-size:10.0pt">
<img src="img.png">
<u></u>
<u></u>
</span>
</p>
有许多解决方案可以解决Gmail中的间距问题,例如在图片中添加display:block,将font-size和line-height设置为0等等。我已经尝试过十几种方法,但没有一种方法可行因为我无法控制的幕后HTML修改 - 被剥离的样式和属性,添加了自己属性的标签等等。
是否有解决方法可以始终保留原始格式?我很乐意提供所需的任何其他详细信息,请告诉我。
答案 0 :(得分:2)
没有解决方法,但有办法限制和隐藏分离的大小。我将它称为分离,但由于Outlook应用了mso-normal p标记,它实际上是顶级单元格扩展。 Here is a related article.
在表格之间创建比表格行(2px)更大的间隙(大约15px)。它更复杂,但是尝试把你买不起的东西分成一张大桌子。 Colspans和rowpans可能很复杂,但如果设置正确,它们就可以工作。
要隐藏分隔,请使用bgcolor设置将所有表包装在主内容表中。例如,将一个大内容窗格设置为白色。从Outlook发送时,所有子表将移动,但间隙将保持白色,从而阻止不需要的行出现在您的电子邮件正文中。
页脚的技巧 - 作为主白色面板的最后一个子表,当它分开时,它会在它下面创建一条白线。从主面板中删除页脚表或将单元格bgcolor设置为与电子邮件背景相同以隐藏此分隔。
答案 1 :(得分:0)
我设法通过更改MsoNormal类来改变这种情况
<style>
td p.MsoNormal {margin: -4px !important}
/* ou */
.MsoNormal {
margin: -4px !important;
}
</style>