Flexbox在网格中的边距

时间:2017-06-29 10:14:06

标签: html css css3 flexbox

我在flexbox中有一个网格,如下所示:

flexbox grid

他们都使用flexbox定位,然后面板本身(彩色位)有margin: 5px

codepen:https://codepen.io/callumacrae/pen/bRoZdp

因为右上角有两个元素,所以有更多的余量,所以它会略微下推 - 我不希望这种情况发生!

我猜两个可能的修复方法是让边距不要这么做,或者使组件五像素更小而不是像现在这样大五个像素 - 但我不知道怎么做其中任何一件事。

如何添加更多元素而不更改父级的大小?

1 个答案:

答案 0 :(得分:3)

主要问题是您使用flex-grow调整元素大小。 flex-grow不是正确的属性,因为它与flex-shrink一起用于分配剩余的空间(或者如果很少)。

您应该使用flex-basis,因为只要您开始使用内容填充这些空框,并且其内容的大小不同,它们就会更加错位。

以下是您的更新版本,我更改为style="flex-basis: calc(50% - 10px);"(10px是为了弥补您的利润)。

这是你的一个版本,与我在我的用法相同