columns 多列布局简写属性

最后更新:2026-09-13

columns columns 多列布局简写属性

columns 是 column-count 和 column-width 的简写属性,用于将元素内容自动分割成多列显示,类似于报纸排版的效果。它常用于长文本内容的多栏展示,提升阅读体验。

分类
初始值auto
继承
适用于
可动画
CSS 版本CSS3
状态标准

📝 语法

columns: auto | <integer> || auto | <length>;

⚙️ 取值

类型描述
auto关键字自动计算列数
<integer>类型固定列数
<length>类型固定列宽

▶ 示例

编辑下方代码,在 playground 中查看实时效果:

🌐 浏览器支持

浏览器 ChromeChrome EdgeEdge FirefoxFirefox SafariSafari OperaOpera
columns v57 v12 v52 v10.1 v44
所有主流浏览器均支持
提示: columns 是 column-count 和 column-width 的简写,若只写一个值,浏览器会根据写法自动判断是列数还是列宽。
注意: 多列布局需要设置明确的高度或足够的内容才能看到分列效果,否则内容可能仍在一列中显示。

❓ 常见问题

Qcolumns 和 Flexbox 多列有什么区别?
Acolumns(CSS 多列布局)是内容自动从一列流到下一列,类似报纸排版,同一段文字会被自动拆分到各列,阅读顺序连续;Flexbox 是让每个子元素成为独立的一列,子元素之间没有内容流动关系,各自作为一个整体。需要连续文本分栏用 columns,需要把子元素横向排列用 flex。
Q如何让标题跨所有列显示?
A给标题元素设置 column-span:all,即可让标题横跨所有列,正文仍在下方分列显示。这是多列文章最常用的结构:标题 + 分栏正文。注意 column-span 只有 none 和 all 两个值,无法指定跨几列;标题需要作为多列容器的直接子元素才能生效。
Qcolumns 简写属性怎么理解?
Acolumns 是 column-count 和 column-width 的简写,写一个值时浏览器自动判断:整数(columns:3)当列数,长度值(columns:200px)当列宽。两个值可同时写,如 columns: 200px 3 表示列宽约 200px、最多 3 列。让多列设置一行搞定。
Q多列布局的浏览器兼容性如何?
A现代浏览器对 columns、column-count、column-gap、column-rule 支持良好,Chrome/Edge/Firefox/Safari 均已支持。column-span:all 需较新版本,旧浏览器中多列会退化为单列显示,内容仍完整,属于渐进增强式的安全降级,可放心使用。

📚 相关教程

Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏