行包之间的Flex Wrap和均匀分布

时间:2018-06-01 16:36:44

标签: css flexbox

Demonstration of question

您好。上面显示的图像是按钮菜单(文本已被故意混淆)。菜单在功能上按预期将项目移动到第二行,但它不会在行之间均匀地分隔项目。我已经在线查找了解决方案,但是他们要么没有工作(对我而言,有些甚至在自己的小提琴中),或者他们的限制太多了。任何人都可以推荐一种方法,使项目在两行(或更多)行之间平均分配吗?

以下是相关的CSS:

#tabs {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    background-color: rgb(50,50,50);
    justify-content: space-around;
}

#tabs button {
    background-color: <?php echo $style['buttonColor']; ?>;
    color: white;
    margin-left: 5px;
    margin-right: 5px;
    margin-top: 10px;
    margin-bottom: 10px;
    padding: 10px;
    font-size: 18px;
    border: 1px solid black;
    -webkit-transition-duration: 0.4s; /* Safari */
    transition-duration: 0.4s;
    cursor: pointer;
}

1 个答案:

答案 0 :(得分:1)

您可以将flex-grow: 1添加到子元素中,使其填充空白区域。

https://jsfiddle.net/sabvyfow/

如果您希望每列中的偶数动态中断,您可能不得不在某些断点处求助于媒体查询:https://www.w3schools.com/css/css3_mediaqueries.asp