我花了两周的时间为此找到任何解决方案,但无法解决。如果在每个表之后浮动表,Microsoft Outlook 2007/2010中将存在一个像素间隙,它使用Microsoft Word 2007 HTML呈现引擎:
我要感谢你任何有效的解决方案 - ,不要把表格分开<td>
。
以下是重现它的HTML代码:
<html>
<head>
<title>Outlook 2007/2010 horizontal gap</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<style type="text/css">
table { mso-table-lspace: 0pt; mso-table-rspace: 0pt; }
</style>
</head>
<body bgcolor="#000000">
<table bgcolor="#ffff00" align="left"><tr><td> </td></tr></table>
<table bgcolor="#ffff00" align="left"><tr><td> </td></tr></table>
</body>
</html>
到目前为止我尝试了什么:
display: inline-table;
代替align="left"
mso-
CSS属性但没有运气<table>
元素border-collapse: collapse
和border-spacing: 0
border: 1px solid red;
会删除间隙但会增加表格的宽度display
,padding
和margin
rules
和/或frame
border
,<td>
,<table>
等)
有趣因素:
如果将这两个表放入表中,则额外间隙的宽度将增加到2个像素。
答案 0 :(得分:2)
以下是如何浮动表的示例。你需要一个border =&#34; 1&#34;和那里的mso-table css摆脱了1px的差距。见例:
<table bgcolor="#454545" width="100%" border="0" cellpadding="0" cellspacing="0"><tr><td width="5%"></td><td align="center" width="95%">
<div align="left" style="float: left; padding: 0px; margin:0px;">
<table border="1" bordercolor="#959595" cellpadding="0" cellspacing="0" align="left" style="padding: 0px; margin:0px; mso-table-lspace: -1pt; mso-table-rspace: -1pt; ">
<tr>
<td width="318" bgcolor="959595">table 1
</td>
</tr>
</table>
</div>
<div align="left" style="float: left; padding: 0px; margin:0px;">
<table border="1" bordercolor="#959595" cellpadding="0" cellspacing="0" align="left" style="padding: 0px; margin:0px; mso-table-lspace:-1pt; mso-table-rspace: -1pt; ">
<tr>
<td width="318" bgcolor="959595">table 2
</td>
</tr>
</table>
</div>
</td></tr></table>
答案 1 :(得分:0)
在两个表的每一个上尝试使用table border =“0”cellspacing =“0”cellpadding =“0”。如果我理解你的问题是正确的,这应该解决它:)
答案 2 :(得分:0)
我们可能在这里是SOL。我也在研究与Outlook 2007/10兼容的电子邮件格式。如果我的读数是正确的,Outlook 2007/10/13不支持border-spacing
表,这可能会给你带来间距问题。
参考文献:
Word 2007 HTML and CSS Rendering Capabilities in Outlook 2007 (Part 1 of 2)
Guide to CSS support in email | Campaign Monitor