CSS column-span 语法
在 CSS3 中,我们可以使用 column-span 属性来实现多列布局的跨列效果。这个属性跟表格中的 colspan 属性有点相似,小伙伴们可以对比理解一下。
语法:
column-span: 关键字;说明:
column-span 的取值有 2 种,如下表所示。
| 取值 | 说明 |
|---|---|
| none(默认值) | 不跨列 |
| all | 跨所有列(与 none 相反) |
注意:
- column-span 属性只适用于多列布局容器的直接子元素。
- column-span 不适用于浮动元素或定位元素(position: absolute 或 position: fixed)。
- 当一个元素设置为 column-span: all; 时,它会强制在其之前的内容结束当前列的填充,并开始新的列流,从而避免内容在跨列元素旁边不规则地环绕。
CSS column-span 摘要
| 属于 | CSS 多列布局 |
|---|---|
| 使用频率 | 中 |
| 是否继承 | 否 |
| 默认值 | none |
| 兼容性 | 查看 |
| 官方文档 | 查看 |
| MDN | 查看 |
CSS column-span 示例
接下来,我们通过一个简单的例子来讲解一下 column-span 属性是如何使用的。
示例:column-span 基本用法
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
body {
width: 400px;
padding: 10px;
border: 1px solid silver;
column-width: 150px;
}
h1 {
text-align: center;
background-color: skyblue;
column-span: all;
}
</style>
</head>
<body>
<h1>匆匆</h1>
<p>燕子去了,有再来的时候;杨柳枯了,有再青的时候;桃花谢了,有再开的时 候。但是,聪明的,你告诉我,我们的日子为什么一去不复返呢?——是有人偷了他们罢:那是谁?又藏在何处呢?是他们自己逃走了罢——如今又到了哪里呢?</p>
<p>……</p>
<p>在逃去如飞的日子里,在千门万户的世界里的我能做些什么呢?只有徘徊罢了,只有匆匆罢了;在八千多日的匆匆里,除徘徊外,又剩些什么呢?过去的日子如轻烟,被微风吹散了,如薄雾,被初阳蒸融了;我留着些什么痕迹呢?我何曾留着像游丝样的痕迹呢?我赤裸裸来到这世界,转眼间也将赤裸裸地回去罢?但不能平的,为什么偏要白白走这一遭啊?</p>
<p>你聪明的,告诉我,我们的日子为什么一去不复返呢?</p>
</body>
</html>页面效果如下图所示。

分析:
在这个例子中,我们使用 column-span: all; 使得标题 h1 元素跨域所有的列。跨列,在 CSS3 多列布局中也是很常见的效果。
