Outlook 2013忽略font-family

Mar*_*arc 8 html css outlook html-email outlook-2003

在为Outlook 2013编写电子邮件时指定font-family的最佳方法是什么?我发现font-family在内联时会被忽略,如下所示:

<span style="font-family: Helvetica, Arial, sans-serif;">Text</span>
Run Code Online (Sandbox Code Playgroud)

我发现这有效:

<span><font face="Helvetica, Arial, sans-serif">Text</font></span>
Run Code Online (Sandbox Code Playgroud)

但是,这很痛苦,因为我必须在添加文本的任何地方添加标记.围绕几个元素包装标记将被忽略.有没有办法我可以设置一次字体而忘记它?

Mar*_*arc 8

强制Outlook 2013使用指定字体堆栈的有效方法是将有问题的文本包装在a中<span>!important在定义时使用font-family.Outlook仍将删除头部定义的任何Google字体,但其他电子邮件客户端将使用它们.这是一个例子:

<head>
<link href='http://fonts.googleapis.com/css?family=Indie+Flower' rel='stylesheet' type='text/css'>
</head>

<body>
<table>
  <tr>
    <td style="font-family: Helvetica, Arial, sans-serif; font-size: 12px;">
      This will always be Helvetica.
    </td>
  </tr>
</table>

<table>
  <tr>
    <td style="font-family: 'Indie Flower', Helvetica, Arial, sans-serif; font-size: 12px;">
       Outlook will display Times New Roman. Others will display Helvetica or Indie Flower.
    </td>
  </tr>
</table>

<table>
  <tr>
    <td style="font-family: Helvetica, Arial, sans-serif; font-size: 12px;">
      <span style="font-family: 'Indie Flower', Helvetica, Arial, sans-serif !important;">
        Outlook will display Helvetica, others will display Indie Flower.
      </span>
    </td>
  </tr>
</table>
</body>
Run Code Online (Sandbox Code Playgroud)

这来自这篇很棒的文章:https://www.emailonacid.com/blog/article/email-development/custom-font-stacks-in-outlook


Cod*_*ler 6

我遇到了这个问题并发现以下帖子解决了这个问题:https: //litmus.com/community/discussions/982-outlook-overrides-font-to-times-new-roman

基本上,您需要body在电子邮件模板中的标记之后添加以下条件css样式代码段,以便Outlook使用所需的字体系列(在本例中为Arial,Helvetica或San-Serif)而不是粘性MSO Times-New -Roman字体:

<!--[if mso]>
<style type="text/css">
body, table, td {font-family: Arial, Helvetica, sans-serif !important;}
</style>
<![endif]-->
Run Code Online (Sandbox Code Playgroud)

  • 这很有效 - 事实上这应该被标记为答案。 (2认同)