我想创建一个Box Layout。它应该像我的布局,但扩展到底部。这些框应该在显示屏的底部结束。
我使用height : 100%;
和min-height: 100%;
进行尝试,但框不会扩展到底部。
是否有解决方案将此框从上到下展开,如从左到右?
* {
box-sizing: border-box;
}
body {
margin: 0;
height:100%;
min-height:100%;
position:relative;
}
.columnsmall {
float: left;
width: 22%;
padding: 10px;
height: 40px;
}
.columnmiddle {
float: right;
width: 34%;
padding: 10px;
height: 40px;
}
.columnbig {
float: left;
width: 66%;
padding:10px;
height: 80px;
}
.row:after {
content: "";
display: table;
clear: both;
}

<!DOCTYPE html>
<html>
<body>
<div class="row">
<div class="columnbig" style="background-color:#ddd;">
</div>
<div class="columnmiddle" style="background-color:#aaa;">
</div>
<div class="columnmiddle" style="background-color:#ccc;">
</div>
</div>
<div class="row">
<div class="columnsmall" style="background-color:#aaa;">
</div>
<div class="columnsmall" style="background-color:#bbb;">
</div>
<div class="columnsmall" style="background-color:#ccc;">
</div>
<div class="columnmiddle" style="background-color:#ddd;">
</div>
</div>
</body>
</html>
&#13;
答案 0 :(得分:1)
您可以尝试使用flex来构建布局,然后使用%或 vh 值轻松管理高度/宽度
#!/usr/bin/env python3
&#13;
* {
box-sizing: border-box;
}
body {
margin: 0;
position: relative;
}
.row {
height: 70vh;
display: flex;
flex-direction: column;
flex-wrap: wrap;
width: 100%;
}
.row:nth-child(2) {
height: 30vh;
flex-direction: row;
}
.columnsmall {
width: 20%;
}
.columnmiddle {
min-height: 50%;
width: 40%;
}
.columnbig {
height: 100%;
width: 60%;
}
&#13;
答案 1 :(得分:0)
只需添加:
min-height: 100vh;
它会将最小高度设置为视口(显示大小)高度。