我应该使用Flexbox还是CSS网格?

我应该使用Flexbox还是CSS网格?,css,flexbox,css-grid,Css,Flexbox,Css Grid,我知道这不是一个新问题,但我还没有找到一个强有力的辩论,我想听听你们的意见 所以,我想做一个单向布局的简单组件。我应该使用什么:Flexbox还是CSS网格?为什么? 这仅仅是一种偏好,还是有利有弊 检查这个超级简单的示例: 一个有3个子容器:两个div只占内容大小,另一个div扩展自身的最大空间 .flex-container { display: flex; } .flex-container .child--max { flex: 1; } .grid-container {

我知道这不是一个新问题,但我还没有找到一个强有力的辩论,我想听听你们的意见

所以,我想做一个单向布局的简单组件。我应该使用什么:Flexbox还是CSS网格?为什么?

这仅仅是一种偏好,还是有利有弊

检查这个超级简单的示例: 一个有3个子容器:两个div只占内容大小,另一个div扩展自身的最大空间

.flex-container {
  display: flex;
}
.flex-container .child--max {
  flex: 1;
}

.grid-container {
  display: grid;
  grid-template-columns: auto 1fr auto;
}

没有激烈的辩论,因为有一个明确的赢家:

将flexbox用于一维布局


它使一切都更快地实现、使用和响应。对于一维布局,使用网格只是一种绝对的过度使用

它们不是同义词。你不应该把它们等同于一个或另一个。那是我开始研究的第一个地方。当然,浏览器支持始终是一个首要问题,我忘了提一下。当然,我要说的“浏览器支持”在这里不是问题,但它可能是CSS网格的一个简单缺点。第二,我想问一个简单的例子。我知道它们不是同义词,我只是想检查这种情况是否只是一种偏好,或者我没有考虑它们的利弊。不管怎样,你的问题主要是基于观点的。但是赞成和反对什么呢?您提供了一个针对特定用例的非常具体的示例。网格可以做flex做不到的事情,flex可以做网格做不到的事情。他们也和谐地工作。你为什么要在两者之间做出选择?看,你可以回答“两者都很好”。这也是我正在寻找的观点之一。干杯;)<代码>我应该使用什么:Flexbox还是CSS网格?为什么?这是您的问题,答案不可能精确,因为它是基于opnion的。我可以说flexbox和其他人的CSS网格,我们将开始讨论为什么这是离题的,谢谢你们的输入。还有一点很简单:“1维,使用flex,2维,使用grid”。但为什么你认为用网格是过分的呢?我根本找不到它。我认为它是多余的,因为它需要考虑更多的步骤,而你试图“解压缩”一个自然的2维布局,以适应1维。既然已经有了一维的完美解决方案,为什么还要这样做呢?这就是flexbox!如果这回答了您的问题,请将其标记为答案:)