0

我正在使用标准的 HTML5 FB Like 插件,一切似乎都很好 - 直到我在我的网站上查看了一个冗长的页面,我注意到我的内容中间有两个框,远离 Facebook Like 按钮。我对 XFBML 版本也有同样的问题。

通过查看生成的按钮的代码,我可以看到 adiv是在内部创建的div id="fb-root">,其样式设置为position: absolute; top: -2000px;.

如果你去connect.facebook.net/en_US/all.js,你可以看到这是在第 26 行,第 2282 行创建和设置的。它说:ga.style.position='absolute';ga.style.top='-2000px';

在小于此高度的页面上,您看不到这些框。但是在比这更长的页面上,会出现这些框。为什么?我怎样才能摆脱这些?我究竟做错了什么?

按钮代码:

<div id="fb-root"></div>
<script>(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&appId=<my app id>";
        fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'));</script>
        <div class="fb-like" data-href="<my page>" data-send="true" data-width="200" data-show-faces="true" 
             data-layout="button_count" data-action="like" data-font=\"arial\"></div>
4

2 回答 2

1

如果您将元素放置在fb-root具有绝对或相对位置的元素内,则会发生这种情况,因为 -2000px 否则将相对于主体。

如果您将fb-root元素直接移动到正文中,那么这将不再发生。

于 2012-04-14T00:14:24.100 回答
0

尝试添加:

ga.style.backgroundColor='transparent';

或者:

ga.style.visibility='hidden';
于 2012-04-13T20:48:07.717 回答