我一直在使用从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部分创建样式表,但这没有任何效果。
有人知道解决这个问题吗?我要么想要删除下划线,要么只是在我为链接指定的颜色中使用下划线显示。
感谢任何可以提供帮助的人。
答案 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)
不 - 不要使用字体标签。字体标记的呈现方式与一个电子邮件客户端 - 互联网浏你可以测试一下。
字体标记中的更改:
不同的行高
不同的字符间距
为避免这种情况,请始终使用<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声明,再次使用..防弹技术!