You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Flexbox实现行内三列等高布局问题排查

问题原因
  • flex布局的容器默认开启align-items: stretch属性,子元素会自动拉伸到和最高子项等高,本身就支持你要的等高效果
  • 你给.col设置了height: 100%,覆盖了flex的默认拉伸行为。同时你的所有父级元素(.row、.grid、.data、.container)都没有设置固定高度,百分比高度没有参考基准,导致高度计算失效,列高最终跟随自身内容长度变化。
修复方案

删除.col规则中的height: 100%即可,.row和.grid里冗余的height: 100%也可以一并删除,不影响功能。

修改后完整CSS参考:

.container {
  text-align: center;
  display: block;
  width: 100%;
}

.grid {
  width: 100%;
}

.row {
  display: flex;
  flex-direction: row;
}

.col {
  background: #444;
  padding: 2em;
  flex: 1;
  border: 1px solid blue;
}

如果需要固定整行的高度,直接给.row设置固定高度值即可,所有列会自动撑满对应高度。

内容的提问来源于stack exchange,提问作者May

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 07:45:05