将第二个div的高度填充到页面的100%(纯css)

时间:2015-11-05 14:44:12

标签: css

使用最新的CSS是否可以获得灵活的高度div(a)和div(b),以延伸填充页面?

以下内容:

div.a { height: calc(100% - div.a.height); }



body {
  background-color: #FEFEFE;
}
div {
  padding: 20px;
  margin: 10px;
  border: 4px solid black;
  width: 100px
}
div.a {
  background-color: #278dae;
}
div.b {
  background-color: #409b24;
  /*height: calc(100% - div.a.height);   <-- this */
}
&#13;
<body>
  <div class="a">a</div>
  <div class="b">b</div>
</body>
&#13;
&#13;
&#13;

visual example

1 个答案:

答案 0 :(得分:6)

Flexbox可以做到这一点:

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
html,
body {
  height: 100%;
}
body {
  background-color: #FEFEFE;
  display: flex;
  flex-direction: column;
}
div {
  padding: 20px;
  margin: 10px;
  border: 4px solid black;
  width: 100px
}
div.a {
  background-color: #278dae;
}
div.b {
  flex: 1;
  background-color: #409b24;
}
<body>
  <div class="a">a</div>
  <div class="b">b</div>
</body>