是否可以验证xmlns:fb(Facebook)属性?

Dis*_*oat 23 html5 facebook facebook-like

我的网站上有一个Facebook Like按钮,因此xmlns:fb<html>标签上也有一个属性:

<!DOCTYPE html>
<html lang="en" xmlns:fb="http://www.facebook.com/2008/fbml">
Run Code Online (Sandbox Code Playgroud)

但是,当通过W3C验证器运行我的网站时,我收到以下错误:

第2行,第61列:属性xmlns:这里不允许使用fb.

第2行,第61列:具有本地名称的属性xmlns:fb不可序列化为XML 1.0.

第222行,第72列:属性fb:like:layout不能序列化为XML 1.0.

第222行,第72列:属性fb:like:此时元素a上不允许布局.

我的理解是,使用该xmlns:fb属性会添加fb到文档命名空间,因此使用任何<fb:元素都是有效的.那不是这样吗?这是HTML5问题吗?

我也有与Twitter按钮类似的验证错误,是否有可能修复这些错误?

第223行,第53列:属性tw:via不可序列化为XML 1.0.

第223行,第53列:属性tw:此时元素a上不允许通过.

Jer*_*nch 29

或者您现在可以使用前缀映射.

<!DOCTYPE html>
<html lang="en" prefix="fb: http://www.facebook.com/2008/fbml">
Run Code Online (Sandbox Code Playgroud)


cop*_*opy 8

无法xmlns:fb使用HTML5 进行验证.

但是,您可以使用新的data-...-attributes,这是由Facebook的加入是有效的HTML5,描述在这里.

这是一个如何在HTML5中使用此扩展的示例(假设所有代码都在body元素中):

<h3>Members</h3>
<embed data-fb="login-button" data-show-faces="true" />
<h3>Recent activity</h3>
<embed data-fb="activity" data-site="***" data-width="200" data-header="false"
 data-border_color="#fff" data-recommendations="false" />
<div id="fb-root"></div>
<!-- the JavaScript API -->
<script src="http://connect.facebook.net/en_US/all.js"></script>
<!-- the extention script from this article -->
<script src="/scripts/fb.js"></script>
<script>
 //<![CDATA[
 FB.init({apiKey: '***', appId: '***', status: true, cookie: true, fbml5: true});
 //]]>
</script>
Run Code Online (Sandbox Code Playgroud)

这将是等效的XHTML代码:

<h3>Members</h3>
<fb:login-button show-faces="true" />
<h3>Recent activity</h3>
<fb:activity site="***" width="200" header="false"
 border_color="#fff" recommendations="false" />
<div id="fb-root"></div>
<!-- the JavaScript API -->
<script src="http://connect.facebook.net/en_US/all.js"></script>
<!-- the extention script from this article -->
<script src="/scripts/fb.js"></script>
<script>
 //<![CDATA[
 FB.init({apiKey: '***', appId: '***', status: true, cookie: true, fbml5: true});
 //]]>
</script>
Run Code Online (Sandbox Code Playgroud)