2012-04-13 4 views
0

私は標準HTML5 FB Likeプラグインを使用していて、すべてがうまく見えました。 Facebookのようなボタンから離れて、コンテンツの途中に2つのボックスがあることに気付きました。私はXFBMLバージョンと同じ問題を抱えていました。Facebook Like Buttonサイトの白いボックスを作成する-2000pxのCSSスタイルでdivsを作成する

生成されたボタンのコードを見ると、内にdivが作成され、そのスタイルはposition: absolute; top: -2000px;に設定されています。

あなたがconnect.facebook.net/en_US/all.jsに行けば、あなたは、これが作成され、ライン26に設定されていることを確認することができ、COL 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> 

答えて

1

はこれが起こります絶対位置または相対位置です。それ以外の点では-2000pxはboに対して相対的ですdy。

fb-root要素を直接ボディに移動すると、これは発生しなくなります。

+0

そういうわけで、ボディータグの先頭に置くように言われているのです...ありがとう! –

0

試みが追加:

ga.style.backgroundColor='transparent'; 

か:あなたが持つ要素の内側fb-root要素を配置した場合

ga.style.visibility='hidden'; 
+0

ありがとうございますが、私はconnect.facebook.net/en_US/all.jsを編集することはできません。私は実際にはハック解決策を探していません。明らかに私はこれが問題である数少ないのだから、何か間違ったことをする必要があります –

+0

あなたはこの要素を検出し、独自のスクリプト内でスタイルを操作できるはずです。実装はハックのように思えるので、ボードに乗る以外には本当の選択肢がないかもしれません。 – Dylan

+0

実装がハックのように見えるのはどういう意味ですか?これは、Facebook Developers Likeボタンジェネレータが生成する正確なコードです。 http://developers.facebook.com/docs/reference/plugins/like/ –

関連する問題