【发布时间】:2015-06-07 17:44:09
【问题描述】:
我正在尝试使 div 的左右图形占据浏览器窗口的整个高度。
起初我尝试过类似https://jsfiddle.net/jr6av8n5/2/
但由于列的 100% 高度占用了父 div 的高度,因此它们不会占用整个屏幕空间。
<div id="main">
<div id="leftLayoutCol">
</div>
<div id="rightLayoutCol">
</div>
<h1>TEST</h1>
<h1>TEST</h1>
<h1>TEST</h1>
<h1>TEST</h1>
<h1>TEST</h1>
</div>
h1 {padding:0px;margin:0px;}
#main {
position: fixed;
width: 55%;
height: 100%;
max-width: 1200px;
margin-left: 50%;
left: -25%;
background-color: grey;
}
#leftLayoutCol {
display: inline-block;
height: 100%;
position: absolute;
width: 40px;
left: -40px;
background-color: green;
}
#rightLayoutCol {
display: inline-block;
height: 100%;
position: absolute;
width: 40px;
right: -40px;
background-color: green;
}
然后我尝试了类似https://jsfiddle.net/4d8d8tds/2/
这更接近我想要实现的目标,但它不是一个可靠的解决方案,因为如果调整浏览器窗口的大小,#main div 将不再水平居中以及其他一些问题。
我已经尝试给 body 100% 的高度,它可以工作,除了它考虑了所有其他页面元素的高度并将其总结为 body 高度,使滚动条出现并且通常看起来很糟糕(一切都得到下移)。
有什么建议吗? (可能不适用于 css3,因为它需要在旧版浏览器上运行)
谢谢
【问题讨论】: