CSS Grid 布局生成器

设好列和行,在格子上拖出区域来放置项目,网格 CSS 连同对应 HTML 一键复制。

预设
项目
CSS
HTML
在网格上拖动即可放置一个项目。

网格都在你的浏览器里生成,这里设置的内容不会上传到 BroBroGo。

常见问题

怎么在网格上放置项目?

在格子上按住并拖动,框出一块矩形区域,松手后它就成为一个跨这些列和行的子项。你画的每个项目都会在 CSS 里生成自己的 grid-column 和 grid-row 规则,并在 HTML 里对应一个 div。项目可以重叠,后画的盖在上面;点项目上的 × 即可删除。

列和行可以设成不同尺寸吗?

可以。每条轨道都有自己的尺寸输入框,你可以填任意 grid 取值——1fr、200px、auto、min-content 或 minmax(120px, 1fr)。尺寸相同的轨道会折叠成 repeat(),让输出更简洁。列间距和行间距各自设置,两者相同时会合并成一个 gap。

生成的代码怎么用?

把 CSS 和 HTML 一起复制走。HTML 给你一个容器,里面每个项目一个 div;CSS 定义网格并给每个项目定位。两段都粘进你的项目,就能还原你在这里画的布局。

CSS Grid 布局生成器的工作原理

CSS Grid 布局生成器是一个可视化的网页设计辅助工具。用户通过设定网格的列数、行数、尺寸以及行列间距,可以直接在生成的网格画布上通过鼠标拖拽来规划子项的分布。

在网格区域内,按住鼠标并拖动框出一块矩形区域,松开鼠标后即可创建一个跨越特定行与列的子项目。工具会根据用户的可视化操作,实时自动生成对应的 CSS 样式代码和 HTML 结构代码。用户只需将这些代码复制并粘贴到自己的前端项目中,即可实现相同的网页布局。

输入参数与配置规则

工具支持对网格容器及轨道的各项属性进行精确配置:

  • 列数 与行数: 允许设置的范围均为 1 到 12 之间的整数。
  • 列间距 与行间距: 允许设置的数值范围为 0 到 48px。
  • 列尺寸 与行尺寸: 每一条网格轨道(行或列)都拥有独立的尺寸输入框。用户可以输入任何合法的 CSS Grid 属性值,例如 1fr200pxautomin-contentminmax(120px, 1fr)

如果用户在尺寸输入框中输入了不合法的字符(例如 not-a-grid-track),该输入框会被标记为无效,但此时生成的 CSS 代码仍会保留上一次有效的尺寸数值。

代码生成与合并规则

工具在输出 CSS 和 HTML 代码时遵循以下底层逻辑:

  • 项目定位: 每一个在网格上绘制的项目,都会在 CSS 中生成专属的 grid-columngrid-row 定位属性,并在 HTML 中对应生成一个 div 容器。
  • 重叠机制: 绘制的项目允许相互重叠,后绘制的项目会层叠在先绘制的项目之上。点击项目右上角的 “×” 可以将其移除。
  • 轨道折叠: 为了保持代码简洁,当相邻的网格轨道拥有相同的尺寸时,输出的 CSS 会自动将它们折叠并使用 repeat() 函数表示。
  • 间距合并: 列间距和行间距支持独立设置。当两者的数值完全相同时,输出的 CSS 会将 column-gaprow-gap 合并简写为单一的 gap 属性。
  • 数量限制: 工具最多支持在网格中放置 16 个项目。

预设布局与快捷操作

为了提高布局效率,工具内置了四种常见的网页布局预设:

预设名称 结构特点
侧边栏 适用于带有侧边导航栏的常规后台或博客布局
页头页脚 包含顶部页头、中部主体和底部页脚的标准三段式结构
画廊 默认生成 3 列、2 行以及 3 个分布项目的网格结构
仪表盘 适用于多板块数据展示的复杂网格结构

此外,点击“添加项目” 会直接在 HTML 中生成一个新的项目元素;点击“清空项目” 则会清空所有已绘制的内容,此时 HTML 容器将变为空,项目计数归零。

隐私与本地处理说明

网格都在你的浏览器里生成,这里设置的内容不会上传到 BroBroGo。所有的网格计算、拖拽交互以及代码生成过程均在用户的本地浏览器中完成,不涉及任何服务器端的数据传输。

常见问题解答

怎么在网格上放置项目?

在格子上按住并拖动,框出一块矩形区域,松手后它就成为一个跨这些列和行的子项。你画的每个项目都会在 CSS 里生成自己的 grid-column 和 grid-row 规则,并在 HTML 里对应一个 div。项目可以重叠,后画的盖在上面;点项目上的 × 即可删除。

列和行可以设成不同尺寸吗?

可以。每条轨道都有自己的尺寸输入框,你可以填任意 grid 取值——1fr、200px、auto、min-content 或 minmax(120px, 1fr)。尺寸相同的轨道会折叠成 repeat(),让输出更简洁。列间距和行间距各自设置,两者相同时会合并成一个 gap。

生成的代码怎么用?

把 CSS 和 HTML 一起复制走。HTML 给你一个容器,里面每个项目一个 div;CSS 定义网格并给每个项目定位。两段都粘进你的项目,就能还原你在这里画的布局。