链接属性rel="canonical"
是否应该针对html5进行验证?
这是我第一次使用此功能,我收到以下验证错误:
“关于元素链接的属性rel的规范值不正确:关键字规范未注册。”
虽然我无法找到任何具体的文件,但它有点暗示它应该没有。
编辑 - 这是抛出验证器的行:
<link rel="canonical" href="http://dev.local/" />
我已尝试使用和不使用结束斜杠
答案 0 :(得分:4)
验证器标记规范无效,因为规范是最近添加的(如Gutmann所指出的)并且验证工具不会实时更新。 W3C告诉我们为什么规范在Micorformats维基上,但没有验证。这是因为验证器中维基数据的更新是手动的。
您将在验证报告中看到此信息: “在HTML规范中列为允许的以空格分隔的链接类型列表,或列在Microformats wiki上允许的链接类型,列表中没有重复的关键字。请注意,验证器中wiki数据的更新是手动的,不要实时发生“
这将在下次手动更新时进行验证。
答案 1 :(得分:2)
canonical
rel
in the HTML5 spec没有定义,但它也说明了:
rel
属性没有默认值。如果省略该属性或者如果用户代理不识别属性中的任何值,则该文档与目标资源没有特定关系,除了两者之间存在超链接。
所以,它在技术上并不符合HTML5,但是UA会忽略它,而不会理解它。
答案 2 :(得分:2)
使用此data-rel
<link data-rel="canonical" href="http://dev.local/" />
答案 3 :(得分:0)
从我可以从验证器的输出和定义链接的rel属性的规范的部分收集的内容,我会说验证器将文档标记为无效,因为“规范”类型是只是提案而不是official linkTypes现在的一部分。
同时该页面也说......
定义为扩展名的类型 微格式wiki现有的rel值 状态为“建议”或的页面 “已批准”可与rel一起使用 链接,a和区域的属性 元素按照“效果 在...“领域。[MFREL]
验证消息引用“{3}}当前有效的”官方目录“扩展。 截至6月2日,此列表不包含规范链接类型,因此验证器在将文档标记为无效时是IMO正确的。
但是现在规范类型是在提议的类型列表中,我认为验证器识别它只是时间问题: - )
答案 4 :(得分:0)
在错误描述中,他们引用Microformats wiki作为有效链接类型列表,其列表包含“规范”链接类型。
我认为这是验证器中的一个临时错误,因为它仅在我的HTML5网站上报告了rel =“canonical”的错误,但在我的其他XHTML网站上却没有。