我在 flexbox 网格中有四个 div。我希望他们一次包装两个,像这样:
+-----------------------+
| 1 | 2 | 3 | 4 |
+-----------------------+
+-----------+
| 1 | 2 |
+-----------+ THIS IS WHAT I WANT
| 3 | 4 |
+-----------+
+-----+
| 1 |
+-----+
| 2 |
+-----+
| 3 |
+-----+
| 4 |
+-----+
Run Code Online (Sandbox Code Playgroud)
现在,这看起来很简单,只需将它们嵌套在新的 flex 容器中并应用 flex-wrap,并给单元格一些最小宽度。但是,这有一个副作用,使中间视图看起来像这样:
+-----------+
| 1 | 3 |
+-----------+ NOT WHAT I WANT
| 2 | 4 |
+-----------+
Run Code Online (Sandbox Code Playgroud)
显然,flexbox 想要首先包装内部 div 而不是考虑它们的行。为了保持所有其他包装工作,为嵌套 div 设置 flex-basis(例如 100%)不是一个选项。为了保持一切动态(例如向其中一行添加第三个单元格),在单元格上设置 %-widths …