http://developers.facebook.com/docs/reference/plugins/like
要在Facebook中加入流行的[赞]按钮,我必须使用以下代码:
<iframe src="http://www.facebook.com/plugins/like.php?href=www.MyDomain.com&layout=standard&show_faces=false&width=225&action=like&font=lucida+grande&colorscheme=dark&height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:250px; height:80px;" allowTransparency="true"></iframe>
由于allowTransparency属性,我的网站不再在W3C上验证:
Line 313, Column 342: there is no attribute "allowTransparency"
… overflow:hidden; width:250px; height:80px;" allowTransparency="true"></iframe>
有办法解决吗?我不能使用XFBML版本。这非常糟糕..
答案 0 :(得分:3)
您是否尝试省略此属性?它不应该被要求。标准甚至没有提到它。
答案 1 :(得分:2)
好的,经过几百个这样的帖子,我终于找到了一个快速简便的方法来获得一个带有Like按钮(或任何其他facebook小部件)的有效页面。
只需几行代码,请查看http://www.liormark.com/develop/development-articles/facebook-fbml-w3c-validation-solved
答案 2 :(得分:1)
以下代码应修复验证问题:
<script language="javascript" type="text/javascript">
//<![CDATA[
document.write('<fb:like send="true" width="600" show_faces="true"></fb:like>');
//]]>
</script>
答案 3 :(得分:0)
如果我没记错的话,allowtransparency是Microsoft制作的一个属性。因此,使用与Internet Explorer系列不同的代码使其工作,并为其他浏览器使用不同的代码进行验证?
虽然这不是你应该担心的事情,但遵循这些标准是件好事,但如果你的网站因为这样的事情而无法验证,那么它就不是世界末日。
答案 4 :(得分:0)
这是最好的代码:
享受....:)
<div id="fb-root"></div>
<script type="text/javascript" language="javascript">
//<![CDATA[
(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
//]]>
</script>
<script type="text/javascript" language="javascript">
// <![CDATA[
document.write('<fb:like href="URL" send="false" width="450" show_faces="false"></fb:like>');
// ]]>
</script>