首页 > 解决方案 > 如果容器具有灵活高度,则为 div 内的所有 div 元素提供 100% 高度

问题描述

我有一个div( payslip-column-container) 包含三个子 div ( payslip-column) 元素

<div class="payslip-column-container">
            <div class="payslip-column payments">
              ...
            </div>
            <div class="payslip-column deductions">
             ...
            </div>
            <div class="payslip-column payment-frequency">
                ...
            </div>
</div>


.payslip-column-container {
    height: 350px;
}

.payslip-column {
    height: 100%;
}

我希望使三个子 div 元素成为容器高度的 100%。如果我给 payslip-column-container div 一个特定的高度(350px),这在上面可以正常工作

如果我给容器 div aheight: fit-content那么它会得到第一个子 div 的高度(这是最高的)但其他两个 div 恢复到不尊重 100% 高度设置

我希望我的容器 div 是最高子 div 的高度,然后其他两个 div 与最高的高度相同

我可以用这个标记实现这一点吗?

标签: htmlcss

解决方案


你可以通过 flex 来实现

.payslip-column-container {

    display: flex;
}

.payslip-column {
    flex: 1 1 0;
    border: 1px solid red;
    max-width: 100%;
}
<div class="payslip-column-container">
            <div class="payslip-column payments">
             "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
            </div>
            <div class="payslip-column deductions">
             "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
            </div>
            <div class="payslip-column payment-frequency">
               "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
            </div>
</div>


推荐阅读