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

伸缩项扩展到内容高度

裴金鑫
2023-03-14

我正在使用flexbox布局将三个div定位在一列中,以便每个div具有相同的高度。如果每个div的内容太大,则会显示滚动条。我希望每一节只扩展到其内容的高度,但目前发生的情况是,每一节总是相同的高度,而不管其中的内容如何。

如果容器是900px,则每个节应该是300px,如果一个节的内容超过300px高,则应该出现滚动条。但是,如果lets的内容说中间的部分只有100px高,那部分应该只有100px,其余的部分应该填满剩余的空间,所以它们每个都是400px高。

示例:http://jsfidle.net/x6puccbh/2/

正如您在本例中所看到的,中间部分与其他部分的高度相同,但我希望它只与其内容一样高。使用flex布局是否可以做到这一点?

<div class="container">
    <div class="panel">
        <div class="section">
            <div class="header">HEADER</div>
            <div class="content">content<br>content<br>content<br>content
                <br>content<br>content<br>content<br>content
                <br>content<br>content<br>content<br>content</div>
        </div>
        <div class="section">
            <div class="header">HEADER</div>
            <div class="content">content</div>
        </div>
        <div class="section">
            <div class="header">HEADER</div>
            <div class="content">content<br>content<br>content<br>content
                <br>content<br>content<br>content<br>content
                <br>content<br>content<br>content<br>content
            </div>
        </div>
    </div>
 </div>

.container {
    height: 300px;
}

.panel {
    display:flex;
    flex-direction: column;
    height: 100%;
}

.header {
    height: 15px;
    text-align: center;
    flex-shrink: 0;
}

.section {
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: auto;
    height: 100%;
    border: 1px solid red;
    display: flex;
    flex-direction: column;
}

.content {
    overflow-y: auto;
    height: 100%;
}

共有1个答案

储臻
2023-03-14

如果你把高度改成自动,我想它能满足你的要求。下面的示例和当前代码。如果这不是你想要的告诉我

http://plnkr.co/edit/mmjxmanacvzvhofxzyol

    .container {
    height: 300px;
}

.panel {
    max-height: 100%;
    display:flex;
    flex-direction: column;
}

.header {
    height: 15px;
    text-align: center;
    flex-shrink: 0;
}

.section {
    border: 1px solid red;
    display: flex;
    flex-direction: column;
    max-height: 33%;
    flex-grow: 1;
}

.content {
    overflow-y: auto;
}
 类似资料:
  • 问题内容: 我有这些嵌套的div,我需要主容器扩展(在高度上)以容纳内部的DIV CSS是这样的: 我的问题是无法拉伸以容纳所有内部div,结果它们一直在后台运行。 考虑到以上情况,如何解决此问题? 问题答案: 您需要在div关闭之前强制输入a 。我可能会将其移入div并将CSS设置为: 更新: 这个问题仍然有相当多的流量,所以我想使用CSS3中称为“弹性框”或“弹性框”的新布局模式,以一种现代的

  • 问题内容: 我需要伸展黄色的孩子来填补父母的所有身高。无需设置父级高度。父级的高度应取决于蓝色的子级文本。 问题答案: 使用Flexbox时,主要错误是开始全面使用。 在很多情况下,我们已经习惯了这一点,尽管谈到Flexbox时,它通常会破坏它。 解决方案很简单,只需删除,它将自动运行。 它的原因,是 柔性的项目 在 行 方向(默认),控制垂直行为,并作为其默认的是这只是工作原样。 堆栈片段

  • 问题内容: TL; DR: CSS网格有什么类似的东西吗? 我试图用几个月的大4x3网格创建年视图日历,而白天则嵌套7x6网格。 日历应填满页面,因此Year网格容器的宽度和高度分别为100%。 为简单起见,该笔中的每个月都有31天,从星期一开始。 我还选择了一个小得离谱的字体来演示该问题: 网格项(=日单元格)非常简洁,因为页面上有数百个。当日期数字标签过大(使用左上角的按钮随意使用笔中的字体大

  • ① python中yield关键字的使用: yield 是一个类似 return 的关键字,只是这个函数返回的是个生成器 当你调用这个函数的时候,函数内部的代码并不立马执行 ,这个函数只是返回一个生成器对象 当你使用for进行迭代的时候,函数中的代码才会执行 生成器特点:可迭代;只能读取一次;实时生成数据,不全存在内存中。 def fun(): yield "aaa" yield

  • 我正在尝试创建一个带有可伸缩列的动态html表。在实际情况下,我可以有20列每个标题和最多400个值。我想这样呈现数据: 我希望能够点击和colx.1,展开或显示同一标题下的所有列,折叠(或隐藏)其他标题的其他列。在上表中单击任何COL2.1单元格,然后将该表更改为: 我试着做了这样的事情:在所有可以显示/隐藏的td元素上使用hideable类,并且做了这样的事情: 我还需要相应地更改页眉和页脚的

  • 伸缩是对该应用所启动的pods数量进行一个控制。 同样进入应用的详情页页,在右上角找到“伸缩”按钮并点开。 在弹出来的对话框中选择启动的POD数量,如下图: 提交之后若数量大于之前的数量,则会启动缺少的POD数量,若小于之前的值,将会逐步减少应用的POD。 目前给的最大值是8个pod,资源可使用的内存是16G,若您的应用超过我们所设定的最大值。想办法优化吧,64核128G内存都不够用,这种级别的应