CSS3 多列
CSS3 多列
CSS3 可以将文本内容设计成像报纸一样的多列布局
以下列出column运用的相关属性
1.column-width:<length> | auto 设置或检索对象每列的宽度
如:-moz-column-width:200px;
2.column-count:<integer> | auto 设置或检索对象的列数
如:-webkit-column-count:3;
3.column-gap:<length> | normal 设置或检索对象的列与列之间的间隙
如:column-gap:normal;column-gap:40px;
4.column-rule:[ column-rule-width ] || [ column-rule-style ] || [ column-rule-color ]设置或检索对象的列与列之间的边框。复合属性。相当于border属性
如:column-rule:10px solid #090;
5.column-span:none | all 设置或检索对象元素是否横跨所有列。
如:column-span:all;
6.column-fill:auto | balance 设置或检索对象所有列的高度是否统一。
auto:列高度自适应内容
balance:所有列的高度以其中最高的一列统一
如:column-fill:balance;
7.column-break-before:auto | always | avoid | left | right | page | column | avoid-page | avoid-column 设置或检索对象之前是否断行。
auto:既不强迫也不禁止在元素之前断行并产生新列
always:总是在元素之前断行并产生新列
avoid:避免在元素之前断行并产生新列
8.column-break-after:auto | always | avoid | left | right | page | column | avoid-page | avoid-column 设置或检索对象之后是否断行。
auto:既不强迫也不禁止在元素之后断行并产生新列
always:总是在元素之后断行并产生新列
avoid:避免在元素之后断行并产生新列
9.column-break-inside:auto | avoid | avoid-page | avoid-column 设置或检索对象内部是否断行。
auto:既不强迫也不禁止在元素内部断行并产生新列
avoid:避免在元素内部断行并产生新列
CSS3 创建多列
column-count 属性指定了需要分割的列数。
以下实例将 <div> 元素中的文本分为 3 列
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <style> .newspaper { -moz-column-count:3; /* Firefox */ -webkit-column-count:3; /* Safari and Chrome */ column-count:3; } </style> </head> <body> <p><b>注意:</b> Internet Explorer 9及更早 IE 版本浏览器不支持 column-count 属性。</p> <div class="newspaper"> 生长在非洲荒漠地带的依米花,默默无闻,少有人注意过它。许多旅人以为它只是一株草而已。但是,它会在一生中的某个清晨突然绽放出美丽的花朵。 那是无比绚丽的一朵花,似乎要占尽人世间所有色彩一样。它的花瓣儿呈莲叶状儿,每瓣自成一色:红、白、黄、蓝,与非洲大地上空的毒日争艳。 但是,它的花期很短,最多只有两天。两天后它就会随着母株一起枯萎,开花意味着它的生命的终结。 </div> </body> </html>
CSS3 多列中列与列间的间隙
column-gap 属性指定了列与列间的间隙。
以下实例指定了列与列间的间隙为 40 像素
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <style> .newspaper { -moz-column-count:3; /* Firefox */ -webkit-column-count:3; /* Safari and Chrome */ column-count:3; -moz-column-gap:40px; /* Firefox */ -webkit-column-gap:40px; /* Safari and Chrome */ column-gap:40px; } </style> </head> <body> <p><b>注意:</b> Internet Explorer 9及更早 IE 版本浏览器不支持 column-count 属性。</p> <div class="newspaper"> 在非洲的荒漠地带,植物的生长需要水分,而开花的植物对水分的需求更大。 非洲一般植物都有庞大的根系采水,以供自身的水分需求。但是依米花没有根系, 它只有惟一的一条主根,孤独地蜿蜒盘曲着钻入地底深处,寻找有水的地方。 那需要幸运和顽强努力,一株依米花往往需要四至五年的时间在干燥的沙漠里寻找水源,然后一点点积聚养分, 在完成蓓蕾所需要的全部养分后,它开花了!所以在它最美丽的时候,它因耗尽了自己的所有的养分而凋零。 </div> </body> </html>
CSS3 列边框
column-rule-style 属性指定了列与列间的边框样式
指定元素跨越多少列
以下实例指定 <h2> 元素跨越所有列
指定列的宽度
column-width 属性指定了列的宽度。
CSS3 多列属性
下表列出了所有 CSS3 的多列属性:
属性 描述
column-count 指定元素应该被分割的列数。
column-fill 指定如何填充列
column-gap 指定列与列之间的间隙
column-rule 所有 column-rule-* 属性的简写
column-rule-color 指定两列间边框的颜色
column-rule-style 指定两列间边框的样式
column-rule-width 指定两列间边框的厚度
column-span 指定元素要跨越多少列
column-width 指定列的宽度
columns 设置 column-width 和 column-count 的简写