我有一个包含两列的布局-左div和右div。
右侧的div具有灰色背景色,我需要它根据用户浏览器窗口的高度垂直展开。现在,背景色结束于该分区中的最后一段内容。
我尝试过高度:100%,最小高度:100%;,等
我有一个包含两列的布局-左div和右div。
右侧的div具有灰色背景色,我需要它根据用户浏览器窗口的高度垂直展开。现在,背景色结束于该分区中的最后一段内容。
我尝试过高度:100%,最小高度:100%;,等
当前回答
最简单的方法就是这样做。
第二部分{背景:红色;高度:100vh;}正文{边距:0px;}<div></div>
其他回答
.包装器{显示:-webkit框;显示:-ms flexbox;显示:柔性;-ms-flex-wrap:包裹;柔性包裹:包裹;高度:100vh;/*高度窗口(vh)*/}.包装器.左侧{宽度:80%;/*宽度可选,但建议使用*/}.包装器.右侧{宽度:20%;/*宽度可选,但建议使用*/背景色:#DD1F26;}<!--vw:视口宽度的百分之一。vh:视口高度的百分之一。vmin:视口宽度或高度中较小者的百分之一。vmax:视口宽度或高度中较大者的百分之一。--><div class=“wrapper”><div class=“left”>左边</div><div class=“right”>正确的</div></div>
尝试此操作-已测试:
body {
min-height: 100%;
}
#right, #left {
height: 100%;
}
在以后的版本中,您可以使用vh:
#right, #left {
height: 100vh
}
这是一个高度修正。
在CSS中使用:
#your-object: height: 100vh;
对于不支持vh单元的浏览器,请使用modernizr。
添加此脚本(为vh单元添加检测)
// https://github.com/Modernizr/Modernizr/issues/572
// Similar to http://jsfiddle.net/FWeinb/etnYC/
Modernizr.addTest('cssvhunit', function() {
var bool;
Modernizr.testStyles("#modernizr { height: 50vh; }", function(elem, rule) {
var height = parseInt(window.innerHeight/2, 10),
compStyle = parseInt((window.getComputedStyle ?
getComputedStyle(elem, null) :
elem.currentStyle)["height"], 10);
bool = !!(compStyle == height);
});
return bool;
});
最后,如果浏览器不支持vh单位,请使用此函数将视口的高度添加到#your object:
$(function() {
if (!Modernizr.cssvhunit) {
var windowH = $(window).height();
$('#your-object').css({'height':($(window).height()) + 'px'});
}
});
你需要做两件事,一是将高度设置为你已经做到的100%。第二个是将位置设置为绝对位置。这应该会奏效。
html,
body {
height: 100%;
min-height: 100%;
position: absolute;
}
来源
最简单:
html,正文{高度:100%;最小高度:100%;}正文{位置:相对;背景:紫色;边距:0;填充:0;}.全高{显示:块;位置:相对;背景:红色;高度:100%;宽度:300px;}<html class=“”><body><div class=“fullheight”>这是全高。</div></body></html>