由于这些按钮在您的页面中包含 HTML 结构,因此它们可以通过 CSS 设置样式。因此,您可以使用 CSS 移动弹出对话框。
一些代码
如果您仔细查看 facebook 提供的弹出窗口,您会发现它附加了一些样式:
您现在唯一要做的就是通过 CSS 将此弹出窗口移动到正确的位置。
例如:如果你想完全隐藏like按钮的评论弹出,你可以使用这个CSS:
.fb_edge_comment_widget.fb_iframe_widget {
display: none;
}
如果您现在想移动它,则不能使用,.fb_edge_comment_widget.fb_iframe_widget
因为元素属性(由 JavaScript 设置)将覆盖您的 CSS。您必须使用跨度较低的一个元素:
.fb_edge_comment_widget.fb_iframe_widget > span{
right: 300px;
}
此代码会将弹出窗口向左移动 300 像素:
这不是最漂亮的解决方案(请注意框顶部的小箭头现在指向任何内容),但它有效。
完整的测试代码:
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<style type="text/css">
.fb_edge_comment_widget.fb_iframe_widget > span{
right: 300px;
}
#wrap {
width: 650px;
margin: 0 auto;
}
</style>
</head>
<body>
<div id="wrap">
<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/de_DE/all.js#xfbml=1&appId=336384849737745";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
<div class="fb-like" data-href="http://www.google.de" data-send="true" data-width="500" data-show-faces="false"></div>
</div>
</body>
</html>