iOS设备电话号码蓝色字体原因及邮件代码颜色失效问题咨询
iOS邮件中电话号码自动变蓝色的原因及解决办法
我来帮你理清这个问题~你遇到的蓝色电话号码,其实是iOS系统自带的自动识别功能在搞鬼,尤其是iOS 11.x这些版本的Mail应用,这个机制默认是开启的:
为什么会自动变蓝色?
iOS的Mail应用会扫描邮件内容里的电话号码格式文本,自动把它转换成可点击的电话链接(方便用户直接拨号),而系统默认给这个链接的样式就是蓝色(还带下划线)。哪怕你在邮件代码里给文本设置了白色,系统的自动样式也会覆盖你的设置,这就是为啥你改了半天颜色都没用的原因。
解决办法有这几个,你可以按需选:
彻底禁用自动识别:在邮件HTML的
<head>标签里添加这个meta标签,告诉系统不要识别电话号码:<meta name="format-detection" content="telephone=no">这样电话号码就会保持你设置的白色样式,不会被转换成链接。
保留可点击功能,强制改颜色:如果还需要用户能点击号码拨号,那就手动给电话号码套上
<a>标签,用内联样式设置颜色(邮件客户端对外部CSS支持很差,内联样式优先级最高):<a href="tel:你的电话号码" style="color:#FFFFFF; text-decoration:none;">你的电话号码</a>这里
text-decoration:none是用来去掉默认的下划线,完全匹配你原本的样式。用零宽空格拆分号码:如果不想加标签,也可以在电话号码的数字之间插入零宽空格
​,让系统无法识别出完整的电话号码,比如:123​456​7890这样文本不会被转换成链接,也能保持你设置的白色。
内容的提问来源于stack exchange,提问作者Adam




