定位最后一行的弹性项目

我的问题是,我想要的可变范围宽度的柔性盒,一切运作良好,但不是在最后一行。 即使在行不满儿童(最后一行)的情况下,我也希望所有孩子都有同样的维度。

#products-list { position:relative; display: flex; flex-flow: row wrap; width:100%; } #products-list .product { min-width:150px; max-width:250px; margin:10px 10px 20px 10px; flex:1; } 

在JSFiddle的例子中,我创build了一个dynamic的情况。

我的flex div可以缩小到150px,长到250px,但所有的都必须是相同的大小(显然我想要一个CSS解决scheme,JS我知道的方式)。

不幸的是,在当前的flexbox(第1级)迭代中,没有干净的方法来解决最后一行alignment问题。 这是一个常见的问题。

具有以下特性的flex属性将是有用的:

  • last-row
  • last-column
  • only-child-in-a-row
  • alone-in-a-column

这个问题似乎是Flexbox Level 2的高优先级:

尽pipe这种行为在flexbox中很难实现,但在CSS Grid Layout中很简单容易:

  • 等宽度弹性项目甚至包装后

如果Grid不是一个选项,下面是包含各种flexbox hacks的类似问题列表:

  • 正确调整和alignment最后一行的弹性项目
  • 弹性框:将最后一行alignment到网格
  • Flexbox包装 – 最后一行的不同alignment方式
  • Flex项目被强制转换为新行时,如何保持相同的维度?
  • 单独一个元素的select器?
  • alignment上一个Flexbox行中的元素
  • 我如何允许flex-items在保持相同大小的同时增长?
  • 左alignmentflexbox的最后一行,使用space-between和margin
  • 最后一行的弹性项目之间的边距不一致
  • 如何保持包装的flex-items与前一行元素的宽度相同?
  • 如何alignment多行柔性盒中最后一行/最后一行
  • 网格的最后一个子节点之间会产生巨大的排水槽原因
  • pipe理justify-content:最后一行之间的空格