防止URL在邮件客户端中显示为链接

28
我正在从我的应用程序发送一封HTML邮件,这封邮件包含URL链接,有没有办法防止邮件客户端将这些URL显示为链接?
例如:
<table>
<tbody>
<tr>
<td>http://www.google.com</td>
</tr>
</tbody>
</table>

将会生成"http://www.google.com"

我希望它生成静态文本。

有什么想法吗?


4
不,这是接收邮件客户端的用户界面功能,旨在使他们的用户生活更加便捷(并减少选择文本、复制文本和粘贴文本到地址栏的次数)。据我所知,你无法对此做任何事情。同时,我赞同 @Kimvais 评论中提到的关于为什么要让你的邮件收件人的生活更加麻烦的问题。 - David Thomas
7
禁止电子邮件客户端自动生成链接是有合理原因的。邮件客户端的用户体验不是完美无缺的。有时候,在邮件中放置超过几个链接可能并不合理,如果客户端自动将每个看起来像URL的字符串转换为链接,那么你会得到一个对最终用户而言更不优化的电子邮件(即它太繁忙和喧闹),而不是更优化的电子邮件。 - Ryan
8
哎呀,有些用户由于误点主页链接而导致特别优惠链接无法使用,实在是让人沮丧。我在邮件中提到了网站名(mysite.com),然后在邮件的后面才放置他们独一无二的特别链接。这个特别链接对每个用户都不同。这种情况很正常,因此需要我给他们提供帮助。 - chiliNUT
2
在我们的情况下,电子邮件中有一个数据库实例名称,看起来像“asdf:sqlserver:dbtier.machine.client.com”,其中“dbtier.machine.client.com”并不是真正的URL,但在手机电子邮件中它显示为可点击的链接,该链接指向silverjewelry(dot)com,因为显然这就是client(dot)com的位置。我们只想显示文本而不是链接。 - CMPalmer
1
网络钓鱼和客户端颜色选择是我想要取消链接的两个主要原因 :) - OutstandingBill
显示剩余2条评论
6个回答

24

这是一些邮件客户端的功能,没有绝对可靠的方法来阻止它们对消息内容进行任何操作。

您可以尝试通过将地址包装在空标签中来欺骗邮件客户端,并希望它们不够聪明无法识别:

<td><span>http</span><span>://</span>www.<span>google.</span>com</td>

3
我也在考虑做类似这样的事情:<td><a href='#' style="text_tecoration:none; color:#000; cursor:defualt">http://www.google.com</a></td>,你认为呢? - Ran
3
我相信你有想要这样做的正当理由,但现在已经明确表明,在一般情况下这不是一个明智的选择。 - JJJ
3
如果您想向用户发送一个位于他们机器上不存在的文件的位置,比如//blah/blah/blah/blah.doc,您不希望将其作为链接发送,而只需将其表示为目录即可。 - pengibot
2
@Kimvais,我们公司的名字里有一个点,聪明的电子邮件客户端需要每次提到它都将其更改为链接。我认为这非常愚蠢。 - Josef Sábl
现在,我需要将URL发送给我的同事,并使用不同的颜色标记该URL的不同部分以解释它们。然而,Gmail坚持认为它知道得更好,它会删除颜色并创建一个链接!这有多酷? - Josef Sábl
显示剩余2条评论

20

使用“零宽度空格”字符:&#8203;

它的作用如其名称所示。它在您的字符串中添加了一个空格,但是该空格占用零宽度,因此它看起来像一个字符串而不是两个。


1
在iOS上可以工作,谢谢!请记得将URL用<nobr>标签包装起来,以防止其在行末断行。 - Lutsen
3
哎?为什么你要这样做!!如果你复制一个电子邮件地址,你会得到一些垃圾字符……请等一下,我需要理解一下上下文。您是在使用哪个程序或工具? - Roko C. Buljan
1
好主意,但不适用于Outlook 365桌面客户端 :( - OutstandingBill

3

我发现被接受的答案不适用于Outlook 2013。我尝试了以下方法并获得了成功:

http<a href='#' style='text-decoration:none; color:#000;'>://www.google.</a>com

在Outlook 2013中,设置样式 cursor:default 无效。但是,如果只将URL的中间部分设置为超链接,则用户仍然可以选择链接文本,而不会出现光标指针。


0
在正确的位置添加隐藏换行元素似乎已经解决了这个问题(至少目前)在几乎所有客户端中,包括桌面 Outlook,根据Litmus的测试(Apple Mail桌面版似乎是主要的例外)。
https:<br style="display: none;"/>//www.w3<br style="display: none;"/>.org/TR/2020/WD-WCAG22-20200227/

0

我在防止MacMail和Yahoo Mail将任何以.com(或其他域名扩展名)结尾的文本字符串创建为链接方面没有什么运气。经过数小时的测试(即使是“href =”“”和“href =“#”也不起作用),最终我插入了自己的URL,然后操纵CSS和内联样式以删除邮件客户端的链接样式。


0

我认为这在很大程度上取决于邮件客户端,因此超出了您的控制范围。唯一的选择是不将其作为URL。例如,写入www.google.com(用户可以像URL一样复制/粘贴)。


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