Javascript 在Flash上强制设置负的底部边距

Javascript 在Flash上强制设置负的底部边距,javascript,css,flash,scrollbar,margin,Javascript,Css,Flash,Scrollbar,Margin,我有一个650像素高的.swf导航旋转木马,底部200像素保留用于旋转木马的反射。反射非常微妙,不被视为重要信息,因此我们希望在窗口高度足以容纳最上面的450个像素时删除垂直滚动条,但不删除反射 我试图通过将边距底部:-200px设置为flash来实现这一点,但这只会使容器的高度缩小200像素,导致背景图案在页面底部之前被剪切。闪光灯本身仍占650像素 除了使用javascript主动隐藏/显示滚动条之外,是否有一些“适当”的修复方法?您可以尝试使用css: #idOfElement {

我有一个650像素高的.swf导航旋转木马,底部200像素保留用于旋转木马的反射。反射非常微妙,不被视为重要信息,因此我们希望在窗口高度足以容纳最上面的450个像素时删除垂直滚动条,但不删除反射

我试图通过将
边距底部:-200px
设置为flash
来实现这一点,但这只会使容器的高度缩小200像素,导致背景图案在页面底部之前被剪切。闪光灯本身仍占650像素


除了使用javascript主动隐藏/显示滚动条之外,是否有一些“适当”的修复方法?

您可以尝试使用css:

#idOfElement {
    overflow-x: hidden;
    overflow-y: hidden;
}
很抱歉,我以为您试图从元素中删除滚动条。如果您想让它们离开窗口,只需执行
body{overflow:hidden}

如果元素的内容大于其容器,则只有在执行
overflow:hidden
操作时,元素的某些部分才会被切断,因此您可能需要查看它

尝试在窗口高度达到450px时隐藏溢出:

window.onresize = function () {
    var height = window.innerHeight;
    if (height > 450) {
        document.body.style.overflow = "hidden";
    }
}

您可能会遇到这样一个问题:一些浏览器喜欢在调整大小期间触发大量调整大小事件,而不是在调整大小之后触发,这可能会影响性能。Paul Irish在博客上写了一篇关于缓解此问题的短文,我认为jQuery的.resize()函数会自动执行此操作。

感谢您的回答,不幸的是,隐藏溢出将导致反射部分根本不显示。如果我们有足够的空间,但不需要滚动条,我们想显示它。即使窗口足够高,它是否会切断反射?