HTML 检查 - 在 href 中使用 tel 时网站无效

HTML checking - Website not valid when using tel inside href

所以当我尝试验证它时出现此错误 here:

Bad value tel:0000 00 00 00 for attribute href on element a: Illegal character in scheme data: not a URL code point

我的 html 看起来像这样:

<a href="tel:0000 00 00 00">0000 00 00 00</a>

有什么办法可以解决这个问题吗?

去掉空格。 URL 中不允许使用文字空格,它们不是 phone 数字数据的一部分,只是供人类使用的格式。

不要使用超链接。使用微数据。移动 phones 将识别它是一个 phone 号码并允许点击它,但它不会影响普通的网络浏览器。

<div class="vcard">
<div class="tel">
    12345555555
</div>

参见:

假设验证器正在根据 RFC 3966 中给出的语法检查 URL,它在 space 个字符上失败。删除它们,或用 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,其中说

even though ITU-T E.123 recommends the use of space characters as visual separators in printed telephone numbers, "tel" URIs MUST NOT use spaces in visual separators to avoid excessive escaping.