Facebook iFrame垂直滚动条无法消失

4

我使用了之前已经使用过三次的相同模板来创建一个自定义Facebook落地页。问题是,这一次,垂直滚动条无法消失。以下是我一直在使用的调整大小代码:

<script type="text/javascript">// <![CDATA[
    window.fbAsyncInit = function() { FB.Canvas.setSize({ width: 520, height: 1200});}
    function sizeChangeCallback() { FB.Canvas.setSize({ width: 520, height: 1200});}
// ]]></script>

在页面底部:
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js" type="text/javascript"></script>
<script type="text/javascript">// <![CDATA[
    FB.init({
    appId : 'MY_APP_ID',
    status : true, // check login status
    cookie : true, // enable cookies to allow the server to access the session
    xfbml : true // parse XFBML
    });
// ]]></script>

我的CSS使用了body {overflow: hidden;},在我的应用程序中选择了“自动调整大小”。问题不是iframe不会调整大小(它确实会),而是我右侧有一个空的垂直滚动条,无法消失。
由于iframe设计使用了整个520px宽度,空的垂直滚动条给我带来了可怕的水平滚动条。根据水平滚动条的宽度,它是由垂直滚动条引起的,而不是HTML/CSS中使页面宽度超过520px的任何东西(我找不到或看不到)。这个问题发生在IE8、IE7和Firefox中。
您可以在这里查看页面。
我尝试了几种来自不同来源的javascript代码变体,但没有成功。不确定这是我遗漏的一些小东西还是又是Facebook的一个bug。这个问题在我的其他Facebook iframe落地页上不存在。在寻找答案并得不到任何结果后,我对此束手无策。

所有的都过时了。全部错误。你不能仅使用CSS。 - 3Dom
1个回答

5
这是这段代码。
html {
overflow-Y: scroll;
}

在您的 style.css 样式表中有一行代码导致了问题。我使用 Chrome 进行检查并移除该值后,滚动条消失了。


太棒了!问题解决了。 谢谢bkaid! - Joe
对于任何好奇的人,那个CSS是一个手风琴内容容器的一部分,但我最终没有使用它...删除了整个部分后,滚动条问题消失了。 - Joe
我也看到有些 CSS 重置设置了该属性。 - evanmcd

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接