自定义Facebook登录按钮*使用JSSDK而不是FBML *

时间:2011-11-22 15:20:18

标签: javascript facebook-javascript-sdk facebook-login

我正在使用Facebook Javascript SDK使用以下标记创建登录按钮。

<div class="fb-login-button" data-show-faces="false" data-width="300px" 
     data-max-rows="1">Login with Facebook</div>

这很好用。但是,我希望通过扩大它来自定义这一点。我知道在XFBML标记中使用不同的值(例如size=)是可能的。我已经找到了需要通过查看生成的html来应用的正确的FB css类,所以我总是可以用一些JQuery魔法破解它。

我更愿意设置适当的data-*属性并让FB-JSSDK自行完成。

我已经尝试data-size=完全不起作用

1 个答案:

答案 0 :(得分:5)

我刚试过data-size="large",但它确实奏效了。样式fb_button_large已应用于它,它稍微大一些。虽然它不是很大,但我几乎没有注意到。此外,它没有记录,所以我认为它最终会被折旧?

然而,

data-size="xlarge"明显更大。

<div class="fb-login-button" data-show-faces="false"
 data-max-rows="1" data-size="xlarge">Login with Facebook</div>

所以,我不确定为什么它不适合你。那么,我想做的只是使用CSS,如果你想完全自定义按钮。

新按钮只是嵌套的<div class="fb-login-button"><a class="fb_button"><span class="fb_button_text"> DOM构造,您可以根据需要使用CSS来设置样式。

如果您在Facebook样式接管时遇到级联优先问题,只需在样式声明结束时使用!important来覆盖Facebook样式。

你甚至可以改变&#34; F&#34;图片,因为它是sprite with multiple sizes。当您覆盖样式时,只需使用background-position属性,直到找到正确的样式。

祝你好运!