Flexbox没有给元素相等的宽度

Flexbox没有给元素相等的宽度,第1张

Flexbox没有给元素相等的宽度

您链接到的文章中没有提到一个重要的部分,那就是

flex-basis
。默认
flex-basis
auto

如果指定的flex-basis是auto,则使用的flex基础是flex项目的main
size属性的值。(它本身可以是关键字auto,它会根据其内容来调整d性项目的大小。)

每个伸缩项目都有一个

flex-basis
类似于其初始大小的。然后,从那里开始,所有剩余的可用空间将按比例(基于
flex-grow
)分配在项目之间。使用时
auto
,该基础是内容大小(或使用定义的大小
width
等)。因此,示例中总体上包含较大文本的项目将获得更大的空间。

如果希望元素完全均匀,可以设置

flex-basis:0
。这会将flex基础设置为0,然后将基于比例分配所有剩余空间(由于所有基础均为0,因此将为所有空间)
flex-grow

li {    flex-grow: 1;    flex-basis: 0;    }

规范中的这张图很好地说明了这一点。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5641220.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存