CSS Boxlayout Height扩展

时间:2017-12-19 07:58:07

标签: html css

我想创建一个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;
&#13;
&#13;

2 个答案:

答案 0 :(得分:1)

您可以尝试使用flex来构建布局,然后使用 vh 值轻松管理高度/宽度

&#13;
&#13;
#!/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;
&#13;
&#13;

答案 1 :(得分:0)

只需添加:

min-height: 100vh;

它会将最小高度设置为视口(显示大小)高度。