iPhone上的Safari会自动为出现在电话号码中的数字字符串创建链接。我正在编写一个包含IP地址的网页,Safari将其转换为电话号码链接。是否可以为整个页面或页面上的某个元素禁用此行为?
当前回答
<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的每一个纵向/横向组合进行媒体查询
其他回答
另一种选择是将你电话号码中的连字符替换为字符- (U+2011“Unicode非断续连字符”)
我使用的一个不仅适用于Mobile Safari的技巧是使用HTML转义码和在电话号码中添加一点标记。这使得浏览器更难“识别”一个电话号码。
Phone: 1-800<span>-</span>620<span>-</span>3803
要在页面的某些部分禁用电话号码检测,请使用href="#"将受影响的文本包装在锚定标记中。如果你这样做,移动Safari和UIWebView应该不去管它。
<a href="#"> 1234567 </a>
我也遇到了同样的问题,不过是在iPad网页应用上。
不幸的是,既不……
<meta name = "format-detection" content = "telephone=no">
也不……
0 = 0
9 = 9
... 工作。
但是,这里有三个丑陋的技巧:
用字母“O”代替数字“0” 用字母“l”代替数字“1” 插入一个没有意义的span:例如555.5<span>5</span>5.5555
取决于你使用的字体,前两个几乎不明显。后者显然包含多余的代码,但对用户是不可见的。
这当然是拙劣的技巧,如果您从数据动态生成代码,或者如果您不能以这种方式污染数据,那么这可能是不可行的。
但在紧要关头,这已经足够了。
有一段时间我真的很困惑,但最终明白了。我们对网站进行了更新,有些数字转换为链接,有些则没有。事实证明,如果数字在<fieldset>中,它们将不会被转换为链接。显然不是大多数情况下的正确解决方案,但在某些情况下是正确的。
推荐文章
- 如何使用Xcode创建。ipa文件?
- Xcode 4 -在新的Macintosh安装上的配置文件上“没有找到有效的签名标识”错误
- 在iPhone上确定用户是否启用了推送通知
- 是否有可能禁用浮动头在UITableView与UITableViewStylePlain?
- Swift -转换为绝对值
- 在代码中为UIButton设置一个图像
- 如何修复UITableView分隔符在iOS 7?
- 在Swift中根据字符串计算UILabel的大小
- 如何调用手势点击在UIView编程在迅速
- 我如何隐藏在一个Swift iOS应用程序的状态栏?
- 对于实例消息,接收方类型***是转发声明
- 如果模态ViewController演示样式为UIModalPresentationFormSheet, iPad键盘将不会解散
- 在UITableView中检测哪个UIButton被按下了
- 我如何输入RGB值到接口生成器?
- NSUserDefaults -如何判断一个键是否存在