iPhone上的Safari会自动为出现在电话号码中的数字字符串创建链接。我正在编写一个包含IP地址的网页,Safari将其转换为电话号码链接。是否可以为整个页面或页面上的某个元素禁用此行为?
当前回答
加上这个,我想这就是你想要的:
<meta name = "format-detection" content = "telephone=no">
其他回答
我想我已经找到了一个解决方案:把数字放在<label>元素内。没有尝试任何其他标记,但是<div>使它在主屏幕上处于活动状态,即使有电话=no属性。
从之前的评论中可以明显看出,元标签确实起作用了,但由于某种原因,在iOS的后续版本中,至少在某些条件下,它已经失效了。我运行的是4.0.1。
要禁用特定元素的电话解析外观,下面的CSS似乎可以做到:
.element { pointer-events: none; }
.element > a { text-decoration:none; color:inherit; }
第一条规则禁止单击,第二条规则负责样式化。
加上这个,我想这就是你想要的:
<meta name = "format-detection" content = "telephone=no">
<meta name = "format-detection" content = "telephone=no">对电子邮件不起作用:如果你正在准备的HTML是电子邮件,元标签将被忽略。
如果你的目标是电子邮件,这里还有一个丑陋但有效的解决方案:
一些你想避免链接或自动格式化的HTML的例子:
will cease operations <span class='ios-avoid-format'>on June 1,
2012</span><span></span>.
和CSS,将使魔术发生:
@media only screen and (device-width: 768px) and (orientation:portrait){
span.ios-date{display:none;}
span.ios-date + span:after{content:"on June 1, 2012";}
}
缺点:你可能需要对ipad/iphone的每一个纵向/横向组合进行媒体查询
Sencha Touch的index.html中的meta标签(<meta name="format-detection" content="telephone=no">)解决了同样的问题。
推荐文章
- 保留HTML字体大小时,iPhone的方向从纵向改变为横向
- iPhone上UIView和UILabels的渐变
- keychain上的分发证书中缺少私钥
- 如何创建一个Swift Date对象?
- Xcode 4在目标设备上说“finished running <my app>”——什么都没有发生
- 从另一个应用程序打开设置应用程序
- 当我没有Mac的时候,在Mac/Safari上测试web应用程序
- Xcode 6 gitignore文件应该包括什么?
- 如何在iPhone/iOS上删除电话号码的蓝色样式?
- 检测视网膜显示
- 如何在UIImageView中动画图像的变化?
- 如何从iPhone访问SOAP服务
- 如何从iOS应用程序启动Safari和打开URL
- QuotaExceededError: Dom异常22:试图向存储添加一些超出配额的东西
- 在Objective-C中@property保留,赋值,复制,非原子