HTML 电话链接可以接受值中的空格吗?
Posted
技术标签:
【中文标题】HTML 电话链接可以接受值中的空格吗?【英文标题】:Can a HTML telephone link accept spaces in the value? 【发布时间】:2017-08-12 21:33:20 【问题描述】:在电话链接中包含空格和plus
符号(用于国际代码)是否有任何错误或问题?示例:
<a href="tel:+46 000 00 00 00">+46 000 00 00 00</a>
(我在这里用0替换了我要使用的实际数字)
【问题讨论】:
为什么电话号码链接需要空格? 在另一个问题中有完整的描述。 ***.com/q/17219688/7744547 我的客户网站设置以这种方式提供的 【参考方案1】:html 在这里无关紧要。无论你把它放在哪里,一个 URL 都是一个 URL。
relevant spec 说:
尽管 ITU-T E.123 [E.123] 建议使用 空格字符作为印刷电话号码中的视觉分隔符, “tel” URI 不得在视觉分隔符中使用空格以避免 过度转义。
所以“不”。
即使允许空格,URL 的一般规则也意味着您必须将其替换为 %20
(因此有关于过度转义的评论)。
【讨论】:
【参考方案2】:是的,根据RFC 3966(电话号码的tel URI),在href
的电话号码中添加空格是不正确的:
5.1.1。电话号码中的分隔符
电话号码可以包含视觉分隔符。视觉分隔符 ('visual-separator') 仅有助于提高可读性,不用于 URI 比较或拨打电话... “tel” URI 不得在 视觉分隔符 ...
如您所见,RFC 明确规定:“tel” URI 不得在视觉分隔符中使用空格。
【讨论】:
这是一个较旧但仍然相关的问题,现在是 2020 年。无论是否符合规范,带有空格格式为 tel: 链接的电话号码似乎适用于 Chrome。我希望 chrome 开发团队已经对此进行了编码,以允许输入错误,就像某些其他格式错误的 html sn-ps 一样。我没有用其他现代浏览器测试过,如果知道这是否相同会很有趣。以上是关于HTML 电话链接可以接受值中的空格吗?的主要内容,如果未能解决你的问题,请参考以下文章
html 跟踪Google Analytics中的出站链接,下载,电话,电子邮件链接