在iPhone上查看电话号码时,是否有办法删除默认的蓝色超链接颜色?像一个特定的移动Safari标签或CSS添加?

我只在数字的地方有这个:

<p id="phone-text">Call us on <strong>+44 (0)20 7194 8000</strong></p>

这里没有超链接,但iPhone仍然将这个文本数字显示为超链接。我在我的一些网站上有这个渲染问题,但不明白为什么会发生这种情况。

我确实读过这篇文章:

移动HTML渲染数字

但这是唯一可行的解决方案吗?


当前回答

由于我们在一个网站上使用tel:链接,在大多数解决方案之前,这里发布了另一个问题。

我使用元标签:

<元名称=“格式检测” 内容=“电话=否”>

这与指定tel: links站点范围内它应该链接!

使用css真的不是一个选择,因为它隐藏了相关的电话链接。

其他回答

不需要使用<meta name="format-detection" content="telephone= No ">删除格式检测。尝试在任何标签中使用电话号码,而不是锚定标签,并相应地设置它的样式,例如:span {background:none !边界:0;填充:0;}

我用了一个简单的技巧,在电话号码中间添加一个隐藏对象。

<span style="color: #fff;">
0800<i style="display:none;">-</i> 9996369</span>

这将帮助你覆盖手机号码颜色的IOS。

尝试将ASCII字符的破折号放在数字分隔之间。

从这里:-

到此:&ndash;

例如:change 555-555-5555 => 555&ndash;555&ndash;5555

这个x-ms-format-detection="none"属性处理格式化电话。

https://msdn.microsoft.com/en-us/library/dn337007 (v = vs.85) . aspx

<p id="phone-text" x-ms-format-detection="none"  >Call us on <strong>+44 (0)20 7194 8000</strong></p>
a[href^=tel]{
    color:inherit;
    text-decoration: inherit;
    font-size:inherit;
    font-style:inherit;
    font-weight:inherit;