为何无法直接为<a>标签添加itemprop="telephone"属性?
问题核心在于微数据对<a>标签的属性解析逻辑,以及telephone属性的预期值格式:
- 当
itemprop="telephone"直接添加到<a>标签时,微数据会优先提取href属性的值(即tel:000 00 00 00),但Schema.org的telephone字段要求的是纯电话号码字符串,而非带tel:协议的URI格式,因此验证器无法识别该内容为有效电话号码。 - 把
itemprop移到外层<p>标签后,微数据会提取<p>标签包含的纯文本内容(000 00 00 00),这完全匹配telephone属性的格式要求,所以验证器能正常识别。
两种合规的写法
方法1:给标签添加content属性显式指定值
通过content属性覆盖href的优先级,直接提供纯电话号码:
<a itemprop="telephone" href="tel:000 00 00 00" title="... 000 00 00 00" content="000 00 00 00">000 00 00 00</a>
方法2:用容器标签包裹并承载itemprop
就是你已经验证有效的写法:
<p itemprop="telephone"> <a href="tel:000 00 00 00" title="... 000 00 00 00"> 000 00 00 00 </a> </p>
内容的提问来源于stack exchange,提问作者Daniel Schreurs
相关产品推荐
相关产品推荐

