CSS 瀑布流布局生成器

生成纯 CSS 的瀑布流布局代码,支持响应式断点、间距设置和可跳过元素

输入列数、容器宽度、间距和断点规则,再选择使用 CSS columns 还是 Flexbox 实现。工具会输出带注释、可直接复制的 HTML 与 CSS。

使用方式:

  • 列数:最大断点下的目标列数
  • 容器宽度:支持 1200px、100%、min(1200px, 100%) 等任意 CSS 宽度
  • 间距:如 16px 或 1rem
  • 布局引擎:CSS columns 更像经典瀑布流;Flexbox 更容易控宽
  • 响应式断点:每行一条,例如 640:2、960:3、1280:4
  • 跳过元素:需要全宽或跳出常规流的选择器,例如 .masonry__item--featured

输出内容:

  • 可复制 HTML 结构
  • 注释化 CSS
  • 断点和跳过元素摘要

示例结果

1 个示例

为画廊页生成 4 列响应式瀑布流代码

输出可直接复制的 HTML + CSS,并支持 featured 卡片全宽展示。

HTML
```html
<section class="masonry">...
```

CSS
```css
.masonry { ... }
```
查看输入参数
{ "columns": 4, "containerWidth": "1200px", "gap": "20px", "layoutEngine": "grid", "responsiveBreakpoints": "640:2\n960:3\n1280:4", "skipElements": ".masonry__item--featured" }

关键信息

分类
开发与 Web
输入类型
number, text, select, textarea
输出类型
text
样本覆盖
4
支持 API
Yes

概览

CSS 瀑布流布局生成器是一款专为前端开发者设计的实用工具,能够快速生成纯 CSS 的瀑布流(Masonry)布局代码。只需输入目标列数、容器宽度、间距以及响应式断点,选择基于 CSS Columns 或 Flexbox 引擎,即可一键获取带注释且可直接复制的 HTML 结构与 CSS 代码,轻松实现跨设备适配的精美图文排版。

适用场景

  • 需要在图片画廊、作品集或电商商品页中实现高度不一的卡片瀑布流排版时。
  • 希望避免引入繁重的 JavaScript 库,仅使用纯 CSS 实现高性能瀑布流布局时。
  • 需要快速生成支持多端响应式断点(如移动端单列、平板双列、桌面多列)的布局代码时。

工作原理

  • 设置基础参数:输入最大断点下的目标列数、容器总宽度(如 1200px 或 100%)以及卡片间距(如 16px)。
  • 配置高级规则:选择布局引擎(CSS Columns 或 Flexbox),并按需输入响应式断点规则(如 960:3)和需要全宽展示的跳过元素选择器。
  • 获取代码:工具将自动生成对应的 HTML 骨架和带有详细注释的 CSS 代码,直接复制到项目中即可使用。

使用场景

摄影师个人网站的摄影作品画廊展示。
资讯类网站的图文卡片信息流排版。
电商平台的商品列表页,适配不同尺寸的商品主图。

用户案例

1. 为画廊页生成 4 列响应式瀑布流代码

前端开发工程师
背景原因
正在开发一个摄影作品展示网站,图片的高度各不相同,需要实现类似 Pinterest 的瀑布流效果。
解决问题
手写响应式瀑布流 CSS 代码繁琐,且需要处理特定精选图片的横向全宽展示。
如何使用
在工具中设置列数为 4,容器宽度 1200px,间距 20px,布局引擎选择 CSS Columns。在响应式断点填入 640:2 和 960:3,并在跳过元素中填入 .masonry__item--featured。
示例配置
{
  "columns": 4,
  "containerWidth": "1200px",
  "gap": "20px",
  "layoutEngine": "grid",
  "responsiveBreakpoints": "640:2\n960:3\n1280:4",
  "skipElements": ".masonry__item--featured"
}
效果
获得了一套完整的 HTML 和 CSS 代码,图片在桌面端显示 4 列,平板 3 列,手机 2 列,且带有 .masonry__item--featured 类的图片完美实现了全宽展示。

2. 移动端优先的 Flexbox 卡片流

UI/UX 设计师
背景原因
需要为一个移动端优先的资讯博客制作文章卡片列表,卡片包含标题和摘要,高度不固定。
解决问题
希望使用 Flexbox 实现简单的自适应折行,而不是严格的垂直瀑布流。
如何使用
设置列数为 3,容器宽度 100%,间距 1rem,布局引擎切换为 Flexbox,断点设置为 768:2 和 480:1。
示例配置
{
  "columns": 3,
  "containerWidth": "100%",
  "gap": "1rem",
  "layoutEngine": "flex",
  "responsiveBreakpoints": "480:1\n768:2"
}
效果
成功生成基于 Flexbox 的弹性布局代码,卡片在不同屏幕尺寸下自动折行并调整列数,代码结构清晰易懂。

用 Samples 测试

development

相关专题

常见问题

CSS Columns 和 Flexbox 引擎有什么区别?

CSS Columns 更接近经典的瀑布流效果,元素按列从上到下排列;Flexbox 则是按行折行排列,更容易控制单行元素的宽度一致性。

响应式断点应该如何填写?

每行填写一条规则,格式为“屏幕宽度:列数”,例如“640:2”表示屏幕宽度小于 640px 时显示 2 列。

什么是“跳过元素”?

跳过元素是指在瀑布流中需要打破常规列宽、占据全宽展示的特殊元素(如横幅广告或精选文章),填入对应的 CSS 选择器即可。

生成的代码需要引入额外的 JS 库吗?

不需要。本工具生成的代码完全基于纯 CSS 实现,无需依赖任何 JavaScript 插件,页面加载更快且性能更佳。

容器宽度支持哪些单位?

支持所有合法的 CSS 宽度值,包括像素(如 1200px)、百分比(如 100%)或 CSS 函数(如 min(1200px, 100%))。

API 文档

请求端点

POST /zh/api/tools/css-masonry-layout-generator

请求参数

参数名 类型 必填 描述
columns number -
containerWidth text -
gap text -
layoutEngine select -
responsiveBreakpoints textarea -
skipElements textarea -

响应格式

{
  "result": "Processed text content",
  "error": "Error message (optional)",
  "message": "Notification message (optional)",
  "metadata": {
    "key": "value"
  }
}
文本: 文本

AI MCP 文档

将此工具添加到您的 MCP 服务器配置中:

{
  "mcpServers": {
    "elysiatools-css-masonry-layout-generator": {
      "name": "css-masonry-layout-generator",
      "description": "生成纯 CSS 的瀑布流布局代码,支持响应式断点、间距设置和可跳过元素",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=css-masonry-layout-generator",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

你可以串联多个工具,比如:`https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`,最多20个。

如果遇见问题,请联系我们:[email protected]