如何防止包含一长串项目的 div 扩展页面高度。我希望 div 占据整个屏幕,但不要更多,这样它就不会将页脚向下推。
问问题
3472 次
3 回答
2
为容器设置一个特定的高度div
,并设置overflow-y
为 auto 以便仅当 div 的内容大于container
. 像这样:
.container {
height: 500px;
overflow-y:auto;
}
于 2013-01-15T16:14:29.070 回答
0
没有js是不可能的,因为你的页面可以用不同的分辨率查看。不同的分辨率意味着不同的高度。事实上,当用户调整浏览器窗口大小时,您可能也想要这种行为,对吗?所以首先,找出浏览器的高度,从中减去页脚的高度,并将这个高度设置为你的容器,我相信你想让它在 yaxis 上滚动。这将解决问题。所有这些任务都非常简单,你可以通过谷歌搜索来完成。
于 2013-01-15T16:28:27.380 回答
0
为此使用 JavaScript/jQuery:
jQuery解决方案:
<div id="content-div">some content here</div>
$(document).ready(function() {
var height = $(document).height();
height = height - (your footer height);
$("#content-div").css({ 'max-height' : height.toString() });
});
标准 JavaScript 解决方案:
<div id="content-div">some content here</div>
function myfunction () {
document.getElementById('content-div').style.height = getDocHeight() + 'px';
}
window.onload = myfunction();
document.getElementById('content-div').style.height = getDocHeight() + 'px';
function getDocHeight() {
var D = document;
return Math.max(
Math.max(D.body.scrollHeight, D.documentElement.scrollHeight),
Math.max(D.body.offsetHeight, D.documentElement.offsetHeight),
Math.max(D.body.clientHeight, D.documentElement.clientHeight)
);
}
另外,将 CSS 更改为:
#content-div { background-color:#1d1d1d; color:#eee; overflow-y: scroll; }
于 2013-01-15T16:12:13.763 回答