使用CSS Grid可高效实现图文混排布局,通过grid-template-columns定义列宽、gap设置间距,结合grid-auto-rows与minmax实现多行自适应布局,利用grid-template-areas配合媒体查询完成响应式设计,使内容结构清晰且易于维护。

在现代网页设计中,图文混排组件非常常见,比如文章卡片、产品展示、新闻列表等。使用 CSS Grid 可以高效、灵活地实现这些布局,让内容结构清晰且响应式适配更强。
用 Grid 实现基础图文左右布局
对于常见的图片在左、文字在右的组合,Grid 能够轻松划分区域,无需浮动或定位。
通过 grid-template-columns 定义两列,一列放图片,一列放文本内容。
.container {
display: grid;
grid-template-columns: 1fr 2fr;
gap: 16px;
align-items: center;
}
.image {
width: 100%;
height: auto;
}
.text h3 {
margin-top: 0;
}
HTML 结构示例:
立即学习“前端免费学习笔记(深入)”;
@@##@@标题
这里是描述文字...
处理多行图文交错布局
当需要多个图文项交替排列时,Grid 的 repeat 和 auto-fit 非常实用。
无错试用版,保留了所以商城的基本功能,商品数量限制80件2005V-C更新:更新所有订单功能及一些相应的错误,在线支付加上邮费功能支持在线支付八家银行等接口和可以选择商品图文排列功能,可以后台自由设置,银行接口列表如下:动感在线支付支付宝 网银在线 NPS支付 西部支付 1st-pay在线支付平台 首信易支付 易付通 中国在线支付 环讯IPS支付 不使用在线支付默认管理员帐号:admin密码:ad
适用于博客列表、商品墙等场景,每项保持一致的结构和间距。
使用 grid-auto-rows 控制每行高度,结合 minmax 实现自适应。
- 设置容器为网格,自动换行
- 每个项目占据一整行或根据屏幕分列
- 图片与文字在每一项内仍可用 grid 布局
.grid-list {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 20px;
}
.item {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 12px;
}
响应式调整:不同屏幕下的布局变化
Grid 配合媒体查询或 minmax + auto-fit 可实现无缝响应。
小屏幕上图文可变为上下堆叠,大屏则并排显示。
利用 grid-template-areas 可视化布局结构,提升可读性。
.responsive-card {
display: grid;
grid-template-areas:
"image"
"text";
}
@media (min-width: 768px) {
.responsive-card {
grid-template-areas: "image text";
grid-template-columns: 1fr 2fr;
}
}
.image { grid-area: image; }
.text { grid-area: text; }
基本上就这些。CSS Grid 让图文混排更简洁、可控,减少对额外框架的依赖,适合构建语义清晰、维护方便的组件。









