iPhone上的Safari会自动为出现在电话号码中的数字字符串创建链接。我正在编写一个包含IP地址的网页,Safari将其转换为电话号码链接。是否可以为整个页面或页面上的某个元素禁用此行为?
当前回答
为什么要删除链接,这使得它非常用户友好的选择。
如果你只是想删除自动编辑,但保持链接工作,只需添加到您的CSS…
a[href^=tel] {
color: inherit;
text-decoration:inherit;
}
其他回答
根据Safari HTML参考,这似乎是正确的事情:
<meta name="format-detection" content="telephone=no">
如果您禁用了此功能,但仍然需要电话链接,则仍然可以使用“tel”URI方案。
这里是苹果开发者库的相关页面。
我也有同样的问题。我在UIWebView中找到了一个属性,它允许你关闭数据检测器。
self.webView.dataDetectorTypes = UIDataDetectorTypeNone;
我也遇到了同样的问题,不过是在iPad网页应用上。
不幸的是,既不……
<meta name = "format-detection" content = "telephone=no">
也不……
0 = 0
9 = 9
... 工作。
但是,这里有三个丑陋的技巧:
用字母“O”代替数字“0” 用字母“l”代替数字“1” 插入一个没有意义的span:例如555.5<span>5</span>5.5555
取决于你使用的字体,前两个几乎不明显。后者显然包含多余的代码,但对用户是不可见的。
这当然是拙劣的技巧,如果您从数据动态生成代码,或者如果您不能以这种方式污染数据,那么这可能是不可行的。
但在紧要关头,这已经足够了。
我有一个ABN(澳大利亚商业号码),iPad Safari坚持要把它变成一个电话号码链接。这些建议都没用。我的解决方案是在数字之间加上img标签。
ABN 98<img class="PreventSafariFromTurningIntoLink" /> 009<img /> 675<img /> 709
该类的存在只是为了记录img标记的用途。
适用于iPad 1(4.3.1)和iPad 2(4.3.3)。
要禁用特定元素的电话解析外观,下面的CSS似乎可以做到:
.element { pointer-events: none; }
.element > a { text-decoration:none; color:inherit; }
第一条规则禁止单击,第二条规则负责样式化。
推荐文章
- 如何修复UITableView分隔符在iOS 7?
- 在Swift中根据字符串计算UILabel的大小
- 如何调用手势点击在UIView编程在迅速
- 我如何隐藏在一个Swift iOS应用程序的状态栏?
- 对于实例消息,接收方类型***是转发声明
- 如果模态ViewController演示样式为UIModalPresentationFormSheet, iPad键盘将不会解散
- 在UITableView中检测哪个UIButton被按下了
- 我如何输入RGB值到接口生成器?
- NSUserDefaults -如何判断一个键是否存在
- 应用程序商店链接“评价/审查此应用程序”
- 将故事板从iPhone转换为iPad
- 如何检查文档文件夹中是否存在文件?
- 保留HTML字体大小时,iPhone的方向从纵向改变为横向
- iPhone上UIView和UILabels的渐变
- keychain上的分发证书中缺少私钥