Outlook 2007更改HTML电子邮件中的链接样式,以便在发送到Hotmail,Gmail等时使用蓝色下划线。是否有任何修复?

时间:2010-11-10 16:09:01

标签: html css email stylesheet outlook-2007

我一直在使用从http://www.campaignmonitor.com/templates/获取的HTML电子邮件模板 在我通过的每个例子中,当我使用HTML模板发送电子邮件时,所有链接都被赋予了可怕的默认蓝色下划线。电子邮件是使用Outlook 2007发送的,当它们在Outlook中查看时,它们就可以了。但是,在Hotmail和Gmail中,无论文本的颜色是什么,此蓝色下划线都会持续存在。

我尝试过像这样的标签的内联样式:

<a href="./" style="color: #E3A216; text-decoration: none;">Mauris commodo hendrerit risus</a>

如果我使用完全相同的HTML电子邮件模板代码并将其从我的hotmail帐户发送到另一个Hotmail帐户,那么它可以完美运行。所以,对我来说这是一个Outlook 2007问题。

我能够剖析outlook发送给hotmail收件人的html,发现Outlook在HTML代码之上附加了一个样式表。这是它发送的内容:

<style>
.ExternalClass .ecxshape
{;}
</style>

<style>
.ExternalClass p.ecxMsoNormal, .ExternalClass li.ecxMsoNormal, .ExternalClass div.ecxMsoNormal
{margin-bottom:.0001pt;font-size:11.0pt;font-family:'Calibri','sans-serif';}
.ExternalClass a:link, .ExternalClass span.ecxMsoHyperlink
{color:blue;text-decoration:underline;}
.ExternalClass a:visited, .ExternalClass span.ecxMsoHyperlinkFollowed
{color:purple;text-decoration:underline;}
.ExternalClass p.ecxMsoAcetate, .ExternalClass li.ecxMsoAcetate, .ExternalClass div.ecxMsoAcetate
{margin-bottom:.0001pt;font-size:8.0pt;font-family:'Tahoma','sans-serif';}
.ExternalClass span.ecxEmailStyle17
{font-family:'Calibri','sans-serif';color:windowtext;}
.ExternalClass span.ecxBalloonTextChar
{font-family:'Tahoma','sans-serif';}
.ExternalClass .ecxMsoChpDefault
{;}
@page WordSection1
{size:612.0pt 792.0pt;}
.ExternalClass div.ecxWordSection1
{page:WordSection1;}

</style>

.ExternalClass似乎是设置a标签的值,但我的内联样式似乎没有覆盖Outlook添加到电子邮件的内容。

我尝试在head部分创建样式表,甚至在body部分创建样式表,但这没有任何效果。

有人知道解决这个问题吗?我要么想要删除下划线,要么只是在我为链接指定的颜色中使用下划线显示。

感谢任何可以提供帮助的人。

8 个答案:

答案 0 :(得分:20)

更新:在2012年撰写本文时,答案是正确的,但似乎不再适用。

使用带有<span>属性的style标记包裹您的文字。

您还应该使用<font>格外小心。

例如:

<a style="color:#E3A216; text-decoration:none;">
  <span style="color:#E3A216;">
    <font color="#E3A216">
      Click me
    </font>
  </span>
</a>

答案 1 :(得分:5)

要摆脱Gmail中的蓝色,只需将颜色从#000000更改为#000001。 Gmail会将所有黑色链接设为蓝色。

答案 2 :(得分:2)

实际上,内联样式是设置文本样式的唯一方法,但最好的方法是多次声明它。使用上面提到的FONT标签并不适用于所有电子邮件客户端。

对HTML电子邮件使用 FONT-tag 的正确方法:

<font face="Arial, Helvetica, sans-serif" size="1" color="#333333" style="font-family:Arial, Helvetica, sans-serif; font-size:13px; color:#333333">Example of styled text.</font>

最佳方式来设置文字样式,方法如下:

<table cellpadding="0" cellspacing="0" border="0" align="center" width="600">
  <tr>
    <td width="600" bgcolor="#ffffff" align="left" style="font-family:Arial, Helvetica, sans-serif; font-size:13px; color:#333333;">
      <a href="#" style="color:#333333; text-decoration:underline;"><span style="color:#333333;">Example of styled linktext.</span></a>
    </td>
  </tr>
</table>

我在 head 中添加了一个额外的样式,它适用于Outlook(但不适用于Gmail):

<style type="text/css">
  a, a:link, a:visited { color:#333333; }
</style>

答案 3 :(得分:0)

如果您的问题非常简单,无法覆盖Outlook样式表,则应使用内联样式尝试!important声明,例如

<a href="./" style="color: #E3A216 !important; text-decoration: none !important;">Mauris commodo hendrerit risus</a>

答案 4 :(得分:0)

您不应该在电子邮件模板中使用内联或其他方式的样式。不推荐使用的代码是当天的顺序,并且通过(in)在链接本身周围正确应用字体颜色声明来避免字体下划线,即使它已经在周围文本的字体声明中。例如:

<font face="Arial, Helvetica, sans-serif" color="#ffffff" size="2">Some non link text here followed by <a href="http://www.yourlink.com" target="_blank"><font color="#ffffff"><u><em>the text for the link here surrounded by the font style specifically for the link</em></u></font></a> irrespective of the text that surrounds it</font>

享受。为了满足所有电子邮件客户端的需要,HTML电子邮件的构建方式非常落后。

答案 5 :(得分:0)

Outlook中的一个已知错误是,如果锚标记不包含有效的URL,则定义的样式可能会被忽略。

答案 6 :(得分:0)

我不记得我在哪里找到了这个解决方案,但是我将以下CSS放在我的电子邮件的<head>内(当然包含在<style>标签内。

/*outlook links visited state fix*/
span.MsoHyperlink { mso-style-priority:99; color:inherit; }
span.MsoHyperlinkFollowed { mso-style-priority:99; color:inherit; }

答案 7 :(得分:-1)

不 - 不要使用字体标签。字体标记的呈现方式与一个电子邮件客户端 - 互联网浏你可以测试一下。

  • Firefox-Yahoo
  • Internet Explorer-Yahoo

字体标记中的更改:

  • 不同的行高

  • 不同的字符间距

为避免这种情况,请始终使用<span style=font-family: or <td style=font-family: ..

另外

修复Outlook和其他电子邮件客户端:

<a href="#" style="color:#735a29 !important; text-decoration:none !important; "><span style="color:#735a29; text-decoration:none;>LINK
</span></a>

在这种情况下,Outlook忽略了!重要,但是网络电子邮件客户端并不重要。这就是为什么我们应该两次重复相同的CSS声明,再次使用..防弹技术!