使用MSO条件<! - [if!mso]>时Outlook.com中的空HTML电子邮件

Dig*_*lMC 2 html css email outlook html-email

所以我在我的电子邮件中使用@ font-face而Outlook 2007,2011和2013给我带来了麻烦.所以我将@ font-face CSS包装在条件<! - [if!mso]>标签中,这适用于outlook(桌面客户端)中的CSS特定样式,但这完全打破了outlook.com中的电子邮件.他们来自空白,因为没有内容!一个完全白色的虚无!

我尝试了各种形式的outlook条件标签,例如<! - [if!mso]>

以下是我目前的代码:

    <!--[if gte mso 9]>
       <style type="text/css">
          @import url(http://image.commonsensemedia-email.org/lib/fea013707564077e77/m/5/csm-fonts.css);
       </style>
    <![endif]-->
Run Code Online (Sandbox Code Playgroud)

以下是石蕊测试,以便您可以看到结果:

https://litmus.com/pub/a49f7b4/screenshots

这些电子邮件在outlook.com中完全为空的原因是什么?

------更新日期:2014/2/18我的解决方案------

这似乎在所有平台上都能很好地工作.一旦我从评论标签中删除了所有HTML,一切都很顺利.

<!--[if !mso]><!-->
    <style type="text/css">
        @import url(http://image.commonsensemedia-email.org/lib/fea013707564077e77/m/5/csm-fonts.css);
    </style>
<!--<![endif]-->
Run Code Online (Sandbox Code Playgroud)

dwa*_*ard 7

最近,我遇到了outlook.com(@ hotmail和@live)电子邮件帐户的空白电子邮件问题.我们遇到的问题与我们的内联样式表中的CSS注释有关.基本上,修复空白电子邮件体验的是将CSS注释更改为服务器端注释(或完全删除它们).如果我在CSS中有CSS评论/* comment */,outlook.com会呈现空白电子邮件.

查看可能的解决方案

此外,我个人认为在HTML电子邮件(或一般电子邮件)中使用外部样式表并不是一种好的做法.最好通过模板/电子邮件<style></style>中的标签添加CSS <head>,或者进一步将相同的CSS内联到电子邮件中的每个HTML元素.以下是您不应在电子邮件中包含外部样式表的背景信息:

更新

正如@digitalmc评论中指出的那样,问题似乎与在客户端评论中使用HTML有关.

  • 事实证明你是对的(大多数)!谢谢你的帮助.问题出在我在CSS中的评论中.问题本身不是评论,而是将代码放在评论标签中.一旦我从评论标签中删除了代码(这是一个简单的<td>我用来描述某些东西)它已被修复.再次感谢您指出我正确的方向. (3认同)