让Facebook Like Box响应

时间:2014-07-12 11:44:20

标签: responsive-design facebook-like

当我们要插入Facebook like box时,我们会自动生成代码以插入我们的网站。

不幸的是,类似框的宽度很难烘焙到代码中:

<div class="fb-like-box" data-href="https://www.facebook.com/bibandtucker.net.au" data-width="450" data-colorscheme="light" data-show-faces="false" data-width="300" data-header="true" data-stream="true" data-show-border="false"></div>

如何让Facebook像盒子一样响应,以便减小宽度以容纳小于硬编码宽度值的内容区域?

您可以在this website上看到问题。观察缩小视口宽度时会发生什么。

4 个答案:

答案 0 :(得分:2)

你可以通过这样做(用谷歌搜索)使它变得流畅:

.fb_iframe_widget,
.fb_iframe_widget span,
.fb_iframe_widget span iframe[style] {
    width: 100% !important;
    min-width: 200px;
}

您可以通过查找它开始弄乱布局的位置来使其响应:

@media (max-width:1100px) { 
    .fb_iframe_widget,
    .fb_iframe_widget span,
    .fb_iframe_widget span iframe[style] {
        width: 100% !important;
        min-width: 200px;
    }
}

由于它是您无法控制的iframe,因此您无法对其进行进一步设计。

演示:http://jsbin.com/mehil/1

答案 1 :(得分:2)

这已经不再适用于2015年 - Facebook更新了他们的代码,因此最小宽度为180px。

要解决这个问题,你必须使用JS。

在这种情况下,.facebook-likebox是包装器(相对于其他元素动态缩放),而.fb-page是iframe的容器。代码是跨浏览器。

这是我的代码snippit:

facebookScale = function () {
    var adjustWidth;
    adjustWidth = $('.facebook-likebox').width() / 180;
    return $('.fb-page').css({
      '-webkit-transform': 'scale(' + adjustWidth + ')',
      '-moz-transform': 'scale(' + adjustWidth + ')',
      'transform': 'scale(' + adjustWidth + ')'
    });
  }

$(function(){
    $(window).on('resize', facebookScale);
  })

编辑:还要确保CSS中包含以下内容:

.fb-page{ 
  transform-origin: 0 0;
  -webkit-transform-origin: 0px 0px;
  -moz-transform-origin: 0px 0px;
}

编辑2:Facebook似乎已经更新了小部件,现在最小宽度为180.所以代码已经更新以反映出来。小部件应调整大小以适应容器的宽度,否则

答案 2 :(得分:1)

<div class="fb-wrap">
<div class="fb-like-box" data-href="http://www.facebook.com/#"
data-width="100%" data-height="#"
data-show-faces="true" data-stream="false" data-header="false"></div>
</div>

.fb-wrap {
padding-top: 10px; width:90%; margin: 0 auto;}

.fb-like-box, .fb-like-box span, .fb-like-box span iframe[style]
{width:  100% !important; }

这对我来说很完美

答案 3 :(得分:0)

这适用于我的show faces true

.fb_iframe_widget,.fb_iframe_widget span,.fb_iframe_widget span iframe[style] 

{max-width: 100% !important;}