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

CSS Grid布局调整:消除item2与item3间距并顶部对齐(不改HTML)

可行,仅用CSS即可实现需求

可以通过两种方式实现,无需修改HTML结构:

方法一:调整网格的间距设置

将全局的gap拆分为仅设置列间距,行间距设为0,这样item2和item3之间的行间距会被消除,同时align-items: start保持元素与容器顶部对齐:

.grid-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 10px; /* 仅保留列间距 */
  row-gap: 0; /* 消除行间距 */
  align-items: start;
}

.item1,
.item2,
.item3 {
  border: 1px solid black;
}

.item1 {
  grid-column: span 1;
  grid-row: span 2;
}

.item1 img {
  width: 80px;
  height: 115px;
}

.item2,
.item3 {
  grid-column: span 1;
  grid-row: span 1;
}

方法二:使用负margin精准抵消间距

如果希望保留其他行间距(比如item1和item3之间的间距),可以给item3设置负的上外边距,抵消默认的行gap:

.grid-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  align-items: start;
}

.item1,
.item2,
.item3 {
  border: 1px solid black;
}

.item1 {
  grid-column: span 1;
  grid-row: span 2;
}

.item1 img {
  width: 80px;
  height: 115px;
}

.item2,
.item3 {
  grid-column: span 1;
  grid-row: span 1;
}

/* 新增样式 */
.item3 {
  margin-top: -10px; /* 抵消行gap的10px */
}

两种方法都能让item2和item3紧贴在一起,且保持与容器顶部对齐的效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 18:08:43