不能用 column-count 做卡片多列,因其专为纯文本流设计,会强行切割卡片导致事件失效、布局错乱;应使用 flex 或 grid 实现多列卡片布局。

用 适合一维排列(横向为主),控制灵活、兼容性好(IE10+ 需加 二维布局原生支持等高、自适应、间隙统一,现代项目首选: 生成可在 deepbi 沙箱 iframe 内运行或作为独立文件运行的交互式 HTML 页面,使用 `window.deepbi` JS SDK 实现数据查询、空间管理、文件浏览及用户操作。当用户提出以下需求时启用该能力:
- 创建 KPI 仪表盘、数据表格、文件浏览器、成员列表、管理页面;
- 明确要求“转成 dhtml”、“转译成 HTML”、“把 XX 页面转成……”、“控制台页面”、“管理后台”、“DeepBI 页面迁移”;
- 提及位于 `apps/console/src/featur 真正容易被忽略的是卡片内容高度差异带来的视觉断裂:Flexbox 下某张卡片特别高,会导致下一行左对齐错位;Grid 下虽自动等高,但若内部用了 display: flex 或 display: grid 排,别碰 column-count——后者专为纯文本流设计,套在卡片上会把 为什么不能用 column-count 做卡片多列
column-count 是浏览器对「一段连续文本」的分栏渲染机制,不是布局工具。它会无视子元素语义,强行按高度切片:
click 事件绑在 .card 上,但 DOM 节点实际被拆散,监听失效display: flex 或 display: grid,column-count 直接被忽略(CSS 规范明确定义:多列不参与 flex/grid 的格式化上下文)min-width 控制单卡最小宽度Flexbox 多列卡片的实操要点
-ms- 前缀):
display: flex + flex-wrap: wrap,否则卡片溢出不换行flex: 0 0 calc(33.333% - 16px) 实现三列(假设 gap: 16px),避免因四舍五入导致最后一列掉行justify-content: space-between 对齐——当卡片数非 3 的倍数时,末尾空隙过大;改用 gap: 16px 更可控@media (max-width: 768px) { .card-grid { flex-direction: column; } },不用重写 flex-basis
Grid 多列卡片更省心的写法
display: grid + grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)),自动算列数,窄屏自然缩为 1 列gap: 16px 同时控制行列间距,比 margin 安全(不参与子项尺寸计算)overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2;,别依赖 height 固定截断,不放进 grid 容器内——grid-column: 1 / -1 可控,column-span: all 在 grid 里无效position: absolute 且没配 position: relative,元素会溢出卡片边界。动手前先确认子元素的定位上下文是否完整。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










