我正在尝试向GMail发送HTML电子邮件。 但是GMail在内部用我的电子邮件包装了我的电子邮件的Html。
例如:我的电子邮件包含html以下
<html>
<body>
<table>
<tr>
<td> TEST 1 </td>
<tr>
</table>
<table>
<tr>
<td> TEST 2 </td>
<tr>
</table>
</body>
但Gmail会以不同的方式翻译此HTML,如下所示
<pre><table>
<tr>
<td> TEST 1 </td>
<tr>
</table>
<table>
<tr>
<td> TEST 2 </td>
<tr>
</table></pre>
任何人都可以帮助我,这个PRE标签是如何在GMail中添加的?
这个pre标签的问题在于它有一些来自gmail的样式会破坏我的电子邮件的外观和感觉。下面是CSS。
.gs pre {
white-space: pre-wrap;
}
另外,有没有办法覆盖上面的CSS来将'white-space'的值改为'initial'而不是'pre-wrap'?如果可以,我的问题将得到解决。
对我上述怀疑的任何帮助都非常感激。
答案 0 :(得分:2)
@RDE,你是对的。 Gmail不会包装PRE标记。
我也想出了问题和解决方案。
<强>问题强> 我使用Adobe CQ(内容管理工具)发送电子邮件。在发送电子邮件时,我的整个HTML都包含了PRE标签。这很可能是由于发送电子邮件的Adobe CQ Mail API造成的。在所有电子邮件客户端中都出现了问题。
<强>解决方案强> 我已经在整个html中包装了PRE标签,样式为&#34; white-space:initial&#34;。当CQ生成电子邮件时,我现在得到两个预标签,一个(外部PRE标签)来自CQ,另一个(内部PRE标签)我用来包装我的HTML。内部PRE标记优先于外部标记,并覆盖导致问题的样式。添加代码以获得更好的清晰度
<pre style="white-space:initial">
Your hTML that goes through CQ
</pre>...
现在,一旦您通过CQ发送电子邮件,您的最终HTML就会像这样
<pre>
<pre style="white-space:initial">
Your hTML that goes through CQ
</pre>
</pre>