新闻中心

如何通过css Grid实现多行多列布局

2025-10-31
浏览次数:
返回列表
答案:CSS Grid 通过 display: grid 创建二维布局,定义 grid-template-columns 和 grid-template-rows 设置行列结构,使用 fr 单位和 repeat() 简化等分布局,配合 gap 设置间距,利用 grid-column 和 grid-row 控制项目跨列跨行,结合 minmax() 与 auto-fit 实现响应式自适应,适用于复杂多行多列页面设计。

如何通过css grid实现多行多列布局

使用 CSS Grid 实现多行多列布局非常直观且强大。只需要在容器上启用 Grid 布局,并定义行和列的结构,就能轻松创建复杂的二维布局。

1. 定义 Grid 容器和基本结构

要开启 Grid 布局,先将父元素设置为 display: grid,然后通过 grid-template-columnsgrid-template-rows 定义列宽和行高。

例如:
.container {
  display: grid;
  grid-template-columns: 100px 200px 150px; /* 三列,宽度分别为 100px, 200px, 150px */
  grid-template-rows: 50px 80px;             /* 两行,高度分别为 50px, 80px */
}

这样就创建了一个 3 列 2 行的网格,共 6 个单元格,子元素会按顺序自动填入。

2. 使用 repeat() 和 fr 单位简化定义

对于等分或重复结构,可以用 repeat() 函数和 fr(fraction)单位让代码更简洁。

立即学习“前端免费学习笔记(深入)”;

比如创建一个 3 列等宽、自动换行的布局:
.container {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 三列,每列占 1 份 */
  grid-template-rows: repeat(2, 100px);  /* 两行,每行 100px 高 */
  gap: 10px; /* 设置行列间距 */
}

fr 单位会根据剩余空间自动分配,适合响应式设计。

情感家园企业站5.0 多语言多风格版 情感家园企业站5.0 多语言多风格版

一套面向小企业用户的企业网站程序!功能简单,操作简单。实现了小企业网站的很多实用的功能,如文章新闻模块、图片展示、产品列表以及小型的下载功能,还同时增加了邮件订阅等相应模块。公告,友情链接等这些通用功能本程序也同样都集成了!同时本程序引入了模块功能,只要在系统默认模板上创建模块,可以在任何一个语言环境(或任意风格)的适当位置进行使用!

情感家园企业站5.0 多语言多风格版 0 查看详情 情感家园企业站5.0 多语言多风格版

3. 控制项目位置与跨行列

Grid 允许子元素跨越多行或多列,使用 grid-columngrid-row 指定起始和结束线。

示例:让第一个项目横跨两列:
.item:first-child {
  grid-column: 1 / 3; /* 从第1线到第3线,即跨2列 */
  grid-row: 1 / 2;    /* 占据第一行 */
}

也可以用 span 关键字简写:

.item:first-child {
  grid-column: span 2; /* 向右跨2列 */
}

4. 自动填充与响应式布局

结合 minmax()auto-fitauto-fill,可以让网格自动适应容器宽度。

实现一个自适应卡片布局:
.container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 15px;
}

浏览器会尽可能放入宽度至少 200px 的列,每列等宽并填满容器,非常适合移动端适配。

基本上就这些。Grid 的核心是容器定义结构,项目自动或手动定位。掌握模板定义、fr 单位、gap 间距和跨行跨列控制,就能灵活实现各种多行多列布局。

以上就是如何通过css Grid实现多行多列布局的详细内容,更多请关注其它相关文章!


# 自适应  # 莱阳智能化推广营销  # 淮安抖音关键词排名地址  # 网站建设怎么加音乐  # 关键词优化排名代理  # 天猫关键词怎么筛选排名  # 十堰关键词优化排名前十  # 抖音推广营销策划书范文  # 济宁网站建设现状  # vue项目添加seo  # 宁波邮箱推广网站官网  # 第一个  # 不均匀  # css  # 两行  # 中不  # 分别为  # 可以用  # 跨行  # 就能  # 多语言  # 移动端适配  # 响应式设计  # 响应式布局  # ai  # 浏览器 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: C++如何实现一个装饰器模式_C++设计模式之动态地给对象添加额外职责  Golang并发任务中错误如何聚合_Golang goroutine error收集方式  知音漫客官网漫画下载_知音漫客网页版阅读记录  Go语言JSON解析深度指南:动态访问与结构体映射实践  2026年发布! 美少女养成动作RPG《神剑少女战记》发布实机演示  谷歌学术网站直达地址 谷歌学术搜索网页版一键进入  4399免费游戏网址入口 4399小游戏免费入口点开即玩  C++编译期如何执行复杂计算_C++模板元编程(TMP)技巧与应用  百度网盘网页版入口 百度网盘网页版官方登录网址  qq游戏大厅官方下载_qq游戏免费下载安装入口  蛙漫漫画官网在线入口 蛙漫全本漫画免费阅读平台  CSS图片焦点样式实现教程:理解与应用tabindex属性  《主播少女的秘密账号迷宫》首支宣传片  包子漫画官方网站在线链接-包子漫画在线阅读平台主页地址  高德地图家和公司地址在哪设置 高德地图通勤路线设置方法【超详细】  双系统安装时,如何设置默认启动系统? msconfig命令了解一下!  谷歌邮箱网页版官方页面入口 谷歌邮箱网页端快速访问  c++如何实现一个简单的软件渲染器_c++从零开始的3D图形学  如何在复杂的电商平台中优雅地管理共享资源并确保正确重定向,使用spryker-shop/resource-share-page模块助你一臂之力  自定义Bag-of-Words实现:处理带负号的词汇权重  Excel函数批量查找替换超快方法_Excel用REPLACE和FIND函数秒级替换  CSS实现侧边栏导航项全宽圆角悬停背景效果  腾讯视频怎么使用多账号家庭管理_腾讯视频家庭多账号统一管理与权限分配教程  在FastAPI中利用lifespan与依赖注入高效管理Redis连接池  Golang如何实现Web文件静态资源服务器_Golang静态资源服务器开发与实践  如何使 Jest 模拟函数默认抛出错误以提高测试效率  qq游戏手机版下载安装_qq游戏移动端入口  火狐浏览器占用内存高卡顿怎么办 火狐浏览器性能优化设置技巧  Win10磁盘清理工具在哪 Win10打开并使用磁盘清理【教程】  Win10双系统截图高效法 截屏快捷键速记【技巧】  如何在网页中实现特定地点的随机图片展示  漫蛙官网正版漫画入口 漫蛙2官方网页登录地址  解决macOS Tkinter应用双击启动崩溃:PyInstaller打包指南  PowerPoint如何制作滚动字幕结尾彩蛋_PowerPoint路径动画实现平滑滚动字幕效果  Bilibili动漫最新防封地址发布-Bilibili动漫2025年最稳正版入口推荐  J*a里如何实现订单支付与库存同步功能_支付库存同步项目开发方法说明  Windows10怎么开启存储感知 Windows10系统设置自动清理临时文件释放C盘空间【教程】  Win11怎么修改默认浏览器_Windows 11设置Chrome为默认  UC浏览器官网入口2025最新 UC浏览器网页版正式地址  PHP中获取MongoDB服务器运行时间(Uptime)的专业指南  J*aScript DOM操作:高效清空列表元素的策略与实践  fishbowl官网免费版 fishbowl养鱼网站入口  解决J*aScript中重复选择项的确认对话框显示问题  微博网页版怎么开启两步验证_微博网页版账号安全两步验证设置方法  处理动态列数据:J*a ArrayList的正确初始化与字符累加教程  俄罗斯Yandex搜索引擎入口_Yandex官网免登录一键访问  必由学官网入口 必由学教师登录入口  钉钉视频会议画面卡顿如何解决 钉钉会议画面优化方法  内存检查:在VS Code中调试C++时的内存视图  HTML空白字符处理机制:渲染、DOM与编码实践 

搜索