当前位置: 首页 > 知识库问答 >
问题:

CSS嵌套flex框高度

洪承天
2023-03-14

我在根容器的第二个flex项中有一个嵌套的flex容器的行布局。我希望嵌套的flex容器是其父容器使用高度的100%。

<div class="steps root"><!--root container-->
<div class="step one">
    I am very tall. Others should be as high as I am!
</div>
<div class="step two-and-three">
    <div class="steps"><!--nested container-->
        <div class="step two">
            nested child 1. should have 100% vertical height
        </div>
         <div class="step three">
             nested child 2. should have 100% vertical height
        </div>
    </div>
</div>

下面是演示这个问题的小提琴:http://jsfidle.net/2zdue/316/

如果我为嵌套的flex容器设置一个显式的高度,那么一切都正常工作。

如何告诉嵌套容器自动填充其容器的垂直空间?

共有1个答案

白子昂
2023-03-14

显示:flex添加.step.two-and-three并删除padding-bottom

.steps.root {
  width: 700px;
}
.steps.root>.step.one {
  height: 300px;
  /*simulate big content in left column*/
}
.steps {
  display: flex;
}
.step.one {
  flex: 1 1 33%;
  background-color: rgba(0, 0, 0, 0.1);
}
.step.two-and-three {
  flex: 2 1 66%;
  background-color: grey;
  display: flex; /* added */
}
.step.two {
  flex: 1 1 50%;
  background-color: green;
}
.step.three {
  flex: 1 1 50%;
  background-color: lime;
}
.step.two-and-three>.steps {
  background-color: olive;
  padding-bottom: 10px;
}
<div class="steps root">
  <!--root container-->
  <div class="step one">I am very tall. Others should be as high as I am!</div>
  <div class="step two-and-three">
    <div class="steps">
      <!--nested container-->
      <div class="step two">nested child 1. should have 100% vertical height</div>
      <div class="step three">nested child 2. should have 100% vertical height</div>
    </div>
  </div>
</div>
 类似资料:
  • 问题内容: 我可以做以下事情吗? 问题答案: 香草CSS不可能。但是,您可以使用类似: Sass使CSS再次变得有趣。Sass是CSS3的扩展,添加了嵌套规则,变量,mixins,选择器继承等。使用命令行工具或网络框架插件将其转换为格式良好的标准CSS。 要么 不用构造长的选择器名称来指定继承,在Less中,您可以简单地将选择器嵌套在其他选择器中。这样可以使继承更清晰,样式表更短。 例:

  • 我有一个flex盒子里面的flex盒子的问题。http://jsfidle.net/fr077nn2/上的JS小提琴包含以下代码: 我正在尝试让.app-content div填充父.app div的剩余空间。它适用于外箱,如小提琴所示。但是,对于内部的盒子来说,CONTENT2并没有填补剩余的空间。我怀疑height:100%在这种情况下不起作用,因为父DIV的高度不是正确知道的...有何建议如

  • css中重复写选择器是非常恼人的。如果要写一大串指向页面中同一块的样式时,往往需要 一遍又一遍地写同一个ID: #content article h1 { color: #333 } #content article p { margin-bottom: 1.4em } #content aside { background-color: #EEE } 像这种情况,sass可以让你只写一遍,且

  • 问题内容: 我在正确使用flexbox时遇到问题,想澄清一下嵌套父元素和子元素的工作方式。 我知道孩子继承了父母的弹性。但是,如果您需要为孩子的孩子(孩子)抚养孩子,这会被覆盖吗?flexbox的正确用法是什么? 我什么时候都适用于孩子 的 孩子(婴儿)的缘故,或将是覆盖孩子的父母柔性? 问题答案: 一个范围 柔性格式化的内容被限制在一个父/子关系。 这意味着弹性容器始终是父容器,而弹性项目始终是

  • 问题内容: 我对CSS边框有一个快速的问题。 我需要创建一个单色插入边框。这是我正在使用的CSS: 不幸的是,这会创建3D脊状边框(忽略正方形和深色说明框) 有任何想法吗? 问题答案: 您可以使用,可能是: 这样的好处是它将覆盖的背景图像,但是当然会模糊(正如您希望从属性中看到的那样)。要建立阴影的阴影,您当然可以添加其他阴影: 编辑 因为我意识到,我是个白痴,忘了提供简单的解决方案 首先 ,它是

  • Grouping Selectors 在样式表中有很多具有相同样式的元素。h1 { color:green; } h2 { color:green; } p { color:green; } 为了尽量减少代码,你可以使用分组选择器。 每个选择器用逗号分隔. 在下面的例子中,我们对以上代码使用分组选择器:h1,h2,p { color:green; } 嵌套选择器 它可能适用于选择器内部的选择器的样