6

w3C 验证器对这段代码很好:

<meta property="og:site_name" content="--Sitename--" />

如果我用 替换property属性name,验证器说og:site_name没有注册。

今天突然出现这个错误:

错误第 7 行,第 66 列:元素meta缺少必需的属性name

什么都没有改变,但弹出了这个错误。

任何人都知道为什么,以及解决方案?

4

3 回答 3

0

很难获得您正在使用的验证器和模式。假设它是validator.w3.org。请注意 HTML5 支持是“实验性的”。“property”标签指的是 rdfa,它是 HTML5标准的一部分。要深入了解更多细节,需要您的代码片段或页面网址......

于 2013-06-28T05:00:45.540 回答
0

对于 HTML5

如果meta元素具有property属性(来自 RDFa),则不需要name该属性。

请参阅W3C Recommendation HTML+RDFa 1.1 - Second Edition中的“HTML5 语法扩展”部分:

如果元素上存在RDFa@property属性,则、和属性都不是必需的,并且必须指定属性。meta@name@http-equiv@charset@content

所以你的标记很好:

<meta property="og:site_name" content="--Sitename--" />

但是,如果您使用name属性而不是 RDFa ,它(现在)甚至有效property,因为OGP 值已注册。所以这也很好:

<meta name="og:site_name" content="--Sitename--" />

你甚至可以结合两种方式

<meta name="og:site_name" property="og:site_name" content="--Sitename--" />
于 2016-01-14T12:03:46.017 回答
-1

我有同样的问题,我觉得很无聊。

这可能不是您等待的答案,但我建议使用http://validator.nu/而不是 W3C 验证器。

于 2013-07-03T16:14:54.903 回答