如何停止Outlook将电子邮件地址渲染为mailto链接?

26
我正在创建一封HTML电子邮件,将要发送给用户。如果在HTML电子邮件中存在有效的电子邮件地址,Outlook会将其渲染成mailto:链接(通常很有帮助)。不幸的是,在我发送的特定电子邮件中,这不是期望的行为。如何停止Outlook这样做?
13个回答

36

Outlook无法将这种模式识别为电子邮件地址:@[text]@[text].[text]

因此,在电子邮件地址之前添加:

<a style="color: black; text-decoration: none"><font style="display: none">@</font>**email**</a>

以及

<style>font {display: none}</style>

<head>标签中将删除mailto链接。


太棒了!这对我来说可行,因为文件系统地址中有一个空格。再次感谢。 - CodeWarrior
4
看起来它是有效的,但当我从 Outlook 发送电子邮件给我的同事(从 Outlook 到 Outlook),她看到了 @ 符号... - SonOfGrey
3
截至本文撰写,虽然与原问题不直接相关,但Gmail客户端不会隐藏“@”,因此如果收件人使用此类客户端,则此解决方案不适用。 - slopapa
1
至少对于Outlook,这也适用于<span>标签。 - SQLFox
4
这个做得很好 :). 我将我的URL和电子邮件地址都放在两个隐藏的单引号中' '. 这在Outlook 2016中有效,并且对人类来说非常清晰易懂。从Outlook复制并粘贴到支持丰富格式的程序(例如:Excel)中,引号就会显示出来。但将其粘贴到不支持丰富格式的程序(例如:记事本)中,引号就会消失。<font style="display: none;">'</font>some@email.com<font style="display: none;">'</font> 在Outlook和Notepad中会显示为 some@email.com,而在粘贴到Excel时会显示为'some@email.com' - Petru Zaharia
1
只有在发送邮件时才有效,但如果您转发或回复该电子邮件,则不起作用,因为样式属性将被删除。 - adam.bielasty

15

我通过谷歌找到了你的问题,几小时后找到了解决相同问题的方法。

将电子邮件地址包含在带有“#”作为目标的 href 标签中,并将颜色设置为黑色,文本装饰设置为 none。此外,在锚点内使用另一个 font 标签,以及字体大小和类型来放置电子邮件地址。

就像这样:

<font face="Arial, Helvetica, sans-serif" size="1" color="#CCCCCC">
This e-mail was sent to 
<a href="#" style="color:#CCCCCC; text-decoration:none;">
<font face="Arial, Helvetica, sans-serif" size="1" color="#CCCCCC">
[email]</font></a>.</font>
结果是电子邮件地址变成了可点击的链接,但存在两个问题:1)它看起来不像可点击的链接;2)该链接无法跳转或执行 mailto: 操作。虽然不完美,但现在对我来说已经足够好了。

4
你的解决方案对我非常有效。可能是我见过处理这个问题最好的方法。我之前在句点后添加&thinsp;以防止我的电子邮件地址链接。像这样:<span style='font-size:1px;'>&thinsp;</span>它起作用并使得样式易于处理,但如果用户需要复制和粘贴地址,那就有问题了。 - jkupczak

5
这里有一个解决方案,它不会阻止电子邮件转换为链接,但可以让你设置该链接的字体颜色和去掉下划线。
我在litmus.com上测试过所有电子邮件客户端,包括Outlook 2010、2013、2016(也在Windows上)、Outlook.com、iPhone 6s、iPad、gmail网页界面和Apple Mail 8、9,都能正常工作。
变化1:一个链接,在点击时不会有反应。
<a href="#" style="text-decoration:none; color:#000">bjorn@rosell.dk</a>

变化2:mailto链接。几乎在所有客户端中都可以使用。但Outlook.com将其样式设为蓝色并带下划线。
<a href="mailto:bjorn@rosell.dk" style="text-decoration:none; color:#000">bjorn@rosell.dk</a>

需要翻译的内容:

hallundbæk提供的@-hack在iPhone、iPad或gmail上不起作用。而在gmail中,多余的@会被显示出来,这并不好看。

elbelcho提出的解决方案与变体1非常相似,但是有额外的字体标签,结果证明这是不必要的。


3
我是这样做的:
<span>username<span style="display: none;">@</span>@mail.com<span>

解析器无法再识别电子邮件,因此未能添加"mailto"超链接。

2

进入工具 > 选项 > 邮件格式 > 编辑器选项
点击校对
点击自动更正选项
点击自动格式设置选项卡并取消勾选“用超链接的互联网和网络路径”
点击“键入时自动格式设置”并取消勾选“用超链接的互联网和网络路径”
保存更改

(此解决方案适用于Outlook 2007)


1
因为让所有用户更换计算机比仅更改代码更容易? - PKD

2
在尝试了所有有效的解决方案后,我自己想出了一个解决方案。由于需要在所有电子邮件客户端上实现此结果,而不仅仅是Outlook,因此其他解决方案由于各种原因都无法奏效。
我在@符号之前和之后以及“com”之前添加了一个不可见的图像间隔器。

writehere@example.com

writehere<img class="nullsp" alt="" border="0" height="0" src="/spacer.gif" style="display:none; visibility: hidden; font-size: 0px; line-height: 0px" width="0"/>@<img class="nullsp" alt="" border="0" height="0" src="/spacer.gif" style="display:none; visibility: hidden; font-size: 0px; line-height: 0px" width="0"/>example.<img class="nullsp" alt="" border="0" height="0" src="/spacer.gif" style="display:none; visibility: hidden; font-size: 0px; line-height: 0px" width="0"/>com

此外,我添加了一个类(并且这可以针对移动设备进行指定):

img[class="nullsp"] { height:0px !important; width:0px !important; display:none !important; visibility: hidden !important;}

这解决了所有电子邮件客户端的问题,包括gmail、yahoo和aol。唯一的问题在于outlook中会出现一个微小的空间,显示图片的地方,如果你把地址复制粘贴到文本编辑器中,空格就会出现。
在EOA测试中,我测试了大多数客户端/浏览器组合:Safari、IE9、Chrome、Firefox;Gmail、Yahoo、AOL、MSN;Outlook、Android4。根据EOA的说法,它仍然链接到Apple Mail6、iPad2和Iphone5和6; 但是在我的iPhone5上没有链接。而EOA并不以其准确性而闻名。
我希望有人能回应并提供类似的解决方法,适用于我列出的4个设备。
~Libby

1

你能把它放在<pre>whatever@address.com</pre>标签中吗?


不幸的是,Outlook仍会在文本上添加mailto:超链接,但它将以等宽字体格式化(在Outlook 2010中测试)。 - bcpettifer

1
据我所知,目前没有办法可以做到这一点,但您可以尝试以一种 Outlook 无法识别的方式编写电子邮件(例如,尝试使用其&# Unicode 表示替换 @ 符号)。
我不是 Outlook 专家,也从未遇到过这个特定的问题,因此我也很想知道是否有更简单的方法。

它无法工作,HTML实体&commit仅支持IE10引擎及以上版本,Outlook用户喜欢Word渲染引擎,也就是IE7。 - Samih A

0

我有一个类似的愿望,希望在电子邮件中包含不会呈现为链接的URL。我试图通过这种方式阻止用户点击电子邮件中的链接以作为一种安全措施,但是我还没有找到一种方法来告诉他们在浏览器中输入(或剪切和粘贴)什么内容而不会被呈现为链接。我认为只留下“http://”可能是可以的;然而,我的URL倾向于是https。


0
&#8228; (One Dot Leader) 替换地址中的标准 .,地址的一部分是 .com/.net/.org
尝试使用字体 Times New Roman<span style="font-family: 'Times New Roman'">&#8228;</span>)以避免字符的奇怪点位置/高度变化。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接