flex布局中,两个子项flex-grow: 1,其中一个加了padding,不再均分了

发布于 2022-09-11 14:35:22 字数 711 浏览 23 评论 0

flex布局中,两个子项flex-grow: 1,其中一个加了padding,不再均分了
新手,求解答!Thanks♪(・ω・)ノ

<style>
    .parent {
        display: flex;
    }
    .kid {
        flex-grow: 1;
        border: 2px black solid;
    }
    .kid .b {
        padding: 0 100px;
    }
</style>

<div class="parent">
    <div class="kid">A</div>
    <div class="kid">
        <div class="b">B</div>
    </div>
</div>

图片描述
图片描述

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

岁吢 2022-09-18 14:35:22

没仔细研究过, 应该是没有限定宽度, .kid加上width:50%就好了

坏尐絯℡ 2022-09-18 14:35:22
    * {
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

老子叫无熙 2022-09-18 14:35:22

这个padding太大了

加了padding之后宽度要大于总宽度的一半吧

旧情别恋 2022-09-18 14:35:22

赞同1楼,正好这两天在研究flex,首先你要明白flex-grow的分配原理。
首先以iphone6为例,暂时把flex-grow:1 注释掉,总宽度是375 两个元素(A,B)宽度分别是A:11.27 B:210.05(带padding值),这样还剩149.68,因为两个元素(A,B)的flex-grow值都是1,那么就会把剩下的元素分成两份149.68/2=76.84,然后分给两个元素(A,B),这样A的宽度就是11.27+76.84 = 88.11 B的宽度就是210.05 + 76.84 = 286.89,然后我们打开flex-grow:1的注释,再审查元素看一下

clipboard.png

clipboard.png

紙鸢 2022-09-18 14:35:22

fle-grow指的是按css布局完元素后 如果有空余的空间则按比例分配给元素 本身就不是让元素平分空间用的啊

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文