我大致有以下布局:
<div class="outer-div">
<div class="content-inner-div">
</div>
<div class="footer-inner-div">
</div>
</div>
外部 div 包含两个 div - 所有内容所在的 content-inner-div 和带有几个按钮的 footer-inner-div。
然后我在 jQuery 弹出窗口中显示这个结构,如下所示:
var template =
'<div class="outer-div">'
+ '<div class="main-inner-div">'
+ '</div>'
+ '<div class="footer-inner-div">'
+ '</div'
+ '</div'
+ '</div';
this.popup = $(template);
var formulaDialog = $(this.popup).dialog({
modal: true,
autoOpen: false,
resizable: true,
width: '300',
minHeight: '100',
closeText: '',
});
$(formulaDialog).dialog('open');
现在我想要的是当我调整弹出窗口的大小时 - footer-div 贴在弹出窗口的底部,并且 content-div 及其内容的大小增加并占据弹出窗口中的所有可用空间。Content-div 可能有非常大的内容,不适合弹出窗口 - 所以我可能需要在 content-div 中垂直滚动。
我在 SO 上看到了几个类似的问题(即jQuery,如果内容还没有变大,则更改 div 高度以自动填充屏幕的其余部分,并使用 jquery (stretch div height) 设置 div 高度)但是因为我没有 JS 经验, JQuery 或 CSS,一般来说,我很难根据我的情况推断这些答案。
此时我将 maxHeight 设置为 content-div 为窗口高度的 60%
$(window).height() * 0.6
这样当 content-div 确实有大的内容模式弹出时不会延伸到屏幕底部。所以我遇到的一个问题是,当我调整这个 content-div 的大小时,它的大小不会超过它的最大大小。
如何在没有我现在的混乱的情况下使用粘性页脚实现良好的调整大小?
PS 调整了一点 Vimal 的答案来完全满足我的问题 - http://jsfiddle.net/7XBrb/2/