【发布时间】:2015-08-07 20:33:11
【问题描述】:
所以当我尝试验证它时出现此错误here:
元素 a 上的属性 href 的错误值 tel:0000 00 00 00:非法 方案数据中的字符:不是 URL 代码点
我的 html 看起来像这样:
<a href="tel:0000 00 00 00">0000 00 00 00</a>
有没有办法解决这个问题?
【问题讨论】:
标签: html hyperlink w3c-validation tel
所以当我尝试验证它时出现此错误here:
元素 a 上的属性 href 的错误值 tel:0000 00 00 00:非法 方案数据中的字符:不是 URL 代码点
我的 html 看起来像这样:
<a href="tel:0000 00 00 00">0000 00 00 00</a>
有没有办法解决这个问题?
【问题讨论】:
标签: html hyperlink w3c-validation tel
去掉空格。 URL 中不允许使用文字空格,它们不是电话号码数据的一部分,只是为人类消费而格式化。
【讨论】:
假设验证器根据RFC 3966 中给出的语法检查 URL,它在空格字符上失败。删除这些,或用visual-separator 字符(例如-)替换它们,你应该没问题。
例子:
<a href="tel:0000-00-00-00">0000 00 00 00</a>
Section 3 的规范有语法。特别是:
phonedigit = DIGIT / [ visual-separator ]
visual-separator = "-" / "." / "(" / ")"
另见Section 5.1.1,它说
尽管 ITU-T E.123 建议使用 空格字符作为印刷电话号码中的视觉分隔符, “tel” URI 不得在视觉分隔符中使用空格以避免 过度转义。
【讨论】:
不要使用超链接。使用微数据。手机会识别为电话号码并允许点击,但不会影响正常的网络浏览器。
<div class="vcard">
<div class="tel">
12345555555
</div>
【讨论】: