个性化阅读
专注于IT技术分析

css3多栏布局 – CSS3高级教程

上一章CSS3高级教程请查看:css3动画animation

使用CSS3,你可以将元素的文本内容拆分为多个列。

创建多栏布局

CSS3引入了多栏布局模块,可以方便、高效地创建多栏布局。现在,你可以像在杂志和报纸中看到的那样创建布局,而无需使用浮动框。下面是一个使用CSS3多列布局特性将一些文本拆分为三列的简单示例。

p {
    -webkit-column-count: 3; /* Chrome, Safari, Opera */
       -moz-column-count: 3; /* Firefox */
            column-count: 3; /* Standard syntax */
}

设置列数或宽度

CSS属性column-count和column-width控制是否显示和显示多少列。column-count属性设置multicol元素中的列数,而column-width属性设置列的期望宽度。

p {
    -webkit-column-width: 150px; /* Chrome, Safari, Opera */
       -moz-column-width: 150px; /* Firefox */
            column-width: 150px; /* Standard syntax */
}

注意: 列宽度描述了列的最佳宽度。但是,实际的列宽度可能会根据可用的空间而变宽或变窄。此属性不应与列计数属性一起使用。

设置列的间距

可以使用column-gap属性控制列之间的间距,在每一列之间应用相同的间隔,默认的间隙是正常的,相当于1em。

p {
    /* Chrome, Safari, Opera */
    -webkit-column-count: 3;
    -webkit-column-gap: 100px;
    /* Firefox */
    -moz-column-count: 3;
    -moz-column-gap: 100px;
    /* Standard syntax */
    column-count: 3;
    column-gap: 100px;
}

设置列的规则

你还可以在列之间添加一条线,即使用column-rule属性的规则。它是在单个声明中设置规则的宽度、样式和颜色的简写属性,column-rule属性采用与border和outline相同的值。

p {
    /* Chrome, Safari, Opera */
    -webkit-column-count: 3;
    -webkit-column-gap: 100px;
    -webkit-column-rule: 2px solid red;
    /* Firefox */
    -moz-column-count: 3;
    -moz-column-gap: 100px;
    -moz-column-rule: 2px solid red;
    /* Standard syntax */
    column-count: 3;
    column-gap: 100px;
    column-rule: 2px solid red;
}

注意: 列规则的宽度不影响列框的宽度,但如果列规则的宽度大于间距,则相邻的列框将重叠该规则。

CSS3多列属性

下表提供了所有多列属性的简要概述:

属性 描述
column-count 指定多列元素内的列数。
column-fill 指定内容如何跨列传播。
column-gap 指定列之间的间隔。
column-rule 指定要在每个列之间绘制的直线或规则。
column-rule-color 指定列之间规则的颜色。
column-rule-style 指定列之间规则的样式。
column-rule-width 指定列之间规则的宽度。
column-span 指定一个元素跨越的列数。
column-width 指定列的最佳宽度。
columns 同时设置列宽度和列计数属性的简写属性。
赞(0)
未经允许不得转载:srcmini » css3多栏布局 – CSS3高级教程

评论 抢沙发

评论前必须登录!