html - 当内容很长时如何使用中间的最小高度元素

标签 html css height

(1)当#child2的内容​​比较少的时候,我想这样显示输出:

enter image description here

https://output.jsbin.com/nisacihuru

<div id="parent">
    <div id="child">child</div>
    <div id="child2">
        <div id="child2_1">child2_1</div>
        <div id="child2_2">child2_2</div>
    </div>
    <div id="child3">child3</div>
</div>

body, html { height: 100% }

#parent { height: 1px; min-height: 100% }

#child { height: 20%; background-color: red; }
#child2 { height: 1px; min-height: 80%; }
#child2_1 { height: 50%; background-color: orange; }
#child2_2 { min-height: 50%; background-color: yellow; }
#child3 { height: 20%; background-color: green; }

(2) 当#child2 的内容很长时,我想这样显示输出。

enter image description here

https://output.jsbin.com/nunosodaju

<div id="child2_2">child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br></div>

但效果不佳..在第二种情况下,#child3 的内容会出现在#child2_2 上。

如果你知道,请解释如何解决它。谢谢:)

最佳答案

#parent {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

#child {
  flex: 1;
  background-color: red;
}

#child2 {
  flex: 4;
  display: flex;
  flex-direction: column;
}

#child2_1 {
  flex: 1;
  background-color: orange;
}

#child2_2 {
  flex: 1;
  background-color: yellow;
}

#child3 {
  flex: 1;
  background-color: green;
}

body {
  margin: 0
}
<div id="parent">
  <div id="child">child</div>
  <div id="child2">
    <div id="child2_1">child2_1</div>
    <div id="child2_2">child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br>child2_2<br></div>
  </div>
  <div id="child3">child3</div>
</div>

关于html - 当内容很长时如何使用中间的最小高度元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42638949/

相关文章:

html - 鼠标悬停不适用于菜单图标,仅适用于菜单文本

html - 通过使用 CSS 保持纵横比来缩放带有中心裁剪的图像

html - CSS 选择器,每 2 个 div 应用 CSS

html - 如何隐藏特定断点上的单元格?

javascript - 将边框应用于占据 div 边距的区域

javascript - 如何逃避这个选择器使其工作?

css - 将 ReactCSSTransitionGroup 与样式组件一起使用

CSS - 没有 "calc"的 div 高度计算

javascript - 根据滚动高度的 100% 修复标题

Jquery SlideUp 高度