CSS3 多列详解
- 前端
- 2023-01-22
CSS3 多列
CSS3 可以将文本内容设计成像报纸一样的多列布局,如下实例:
我们今天来说以下几个属性:
!!Explorer 9及更早 IE 版本浏览器不支持 column-count 属性
column-count 指定元素应该被分割的列数。
column-gap 指定列与列之间的间隙
column-rule-style 指定两列间边框的样式
column-rule-width 指定两列间边框的厚度
column-rule-color 指定两列间边框的颜色
column-rule 所有 column-rule-* 属性的简写
column-span 指定元素要跨越多少列
column-width 指定列的宽度
column-count
column-count属性指定了需要分割的列数
<style type="text/css">
.newspaper {
width: 600px;
border: 1px solid #000000;
column-count: 3;
}
</style>
<body>
<div class="newspaper">
“当我年轻的时候,我梦想改变这个世界;当我成熟以后,我发现我不能够改变这个世界,我将目光缩短了些,决定只改变我的国家;当我进入暮年以后,我发现我不能够改变我们的国家,我的最后愿望仅仅是改变一下我的家庭,但是,这也不可能。当我现在躺在床上,行将就木时,我突然意识到:如果一开始我仅仅去改变我自己,然后,我可能改变我的家庭;在家人的帮助和鼓励下,我可能为国家做一些事情;然后,谁知道呢?我甚至可能改变这个世界。”
</div>
</body>
column-gap
column-gap属性指定了多列中列与列间的间隙
<style type="text/css">
.newspaper {
width: 600px;
border: 1px solid #000000;
column-count: 3;
column-gap: 40px;
}
</style>
<body>
<div class="newspaper">
“当我年轻的时候,我梦想改变这个世界;当我成熟以后,我发现我不能够改变这个世界,我将目光缩短了些,决定只改变我的国家;当我进入暮年以后,我发现我不能够改变我们的国家,我的最后愿望仅仅是改变一下我的家庭,但是,这也不可能。当我现在躺在床上,行将就木时,我突然意识到:如果一开始我仅仅去改变我自己,然后,我可能改变我的家庭;在家人的帮助和鼓励下,我可能为国家做一些事情;然后,谁知道呢?我甚至可能改变这个世界。”
</div>
</body>
column-rule-style
column-rule-style属性指定了列与列间的边框样式:
他有十个值:
<style type="text/css">
.newspaper {
width: 600px;
border: 1px solid #000;
column-count: 3;
column-rule-style: dashed;
}
</style>
<body>
<div class="newspaper">
“当我年轻的时候,我梦想改变这个世界;当我成熟以后,我发现我不能够改变这个世界,我将目光缩短了些,决定只改变我的国家;当我进入暮年以后,我发现我不能够改变我们的国家,我的最后愿望仅仅是改变一下我的家庭,但是,这也不可能。当我现在躺在床上,行将就木时,我突然意识到:如果一开始我仅仅去改变我自己,然后,我可能改变我的家庭;在家人的帮助和鼓励下,我可能为国家做一些事情;然后,谁知道呢?我甚至可能改变这个世界。”
</div>
</body>
column-rule-color
column-rule-color属性指定了两列的边框颜色:
<style type="text/css">
.newspaper {
width: 600px;
border: 1px solid #000;
column-count: 3;
column-rule-style: dashed;
column-rule-color: #00FFFF;
}
</style>
<body>
<div class="newspaper">
“当我年轻的时候,我梦想改变这个世界;当我成熟以后,我发现我不能够改变这个世界,我将目光缩短了些,决定只改变我的国家;当我进入暮年以后,我发现我不能够改变我们的国家,我的最后愿望仅仅是改变一下我的家庭,但是,这也不可能。当我现在躺在床上,行将就木时,我突然意识到:如果一开始我仅仅去改变我自己,然后,我可能改变我的家庭;在家人的帮助和鼓励下,我可能为国家做一些事情;然后,谁知道呢?我甚至可能改变这个世界。”
</div>
</body>
column-rule-width
column-rule-width属性指定了两列的边框厚度:
他有三个值,也可以指定宽度
<style type="text/css">
.newspaper {
width: 600px;
border: 1px solid #000;
column-count: 3;
column-rule-style: dashed;
column-rule-width: 5px;
}
</style>
<body>
<div class="newspaper">
“当我年轻的时候,我梦想改变这个世界;当我成熟以后,我发现我不能够改变这个世界,我将目光缩短了些,决定只改变我的国家;当我进入暮年以后,我发现我不能够改变我们的国家,我的最后愿望仅仅是改变一下我的家庭,但是,这也不可能。当我现在躺在床上,行将就木时,我突然意识到:如果一开始我仅仅去改变我自己,然后,我可能改变我的家庭;在家人的帮助和鼓励下,我可能为国家做一些事情;然后,谁知道呢?我甚至可能改变这个世界。”
</div>
</body>
column-rule
column-rule 属性是一个速记属性设置所有column-rule-*属性。column-rule 属性设置列之间的宽度,样式和颜色。
语法:column-rule:column-rule-width column-rule-style column-rule-color
<style type="text/css">
.newspaper {
width: 600px;
border: 1px solid #000;
column-count: 3;
column-rule: 4px dotted #0168B7;
}
</style>
<body>
<div class="newspaper">
“当我年轻的时候,我梦想改变这个世界;当我成熟以后,我发现我不能够改变这个世界,我将目光缩短了些,决定只改变我的国家;当我进入暮年以后,我发现我不能够改变我们的国家,我的最后愿望仅仅是改变一下我的家庭,但是,这也不可能。当我现在躺在床上,行将就木时,我突然意识到:如果一开始我仅仅去改变我自己,然后,我可能改变我的家庭;在家人的帮助和鼓励下,我可能为国家做一些事情;然后,谁知道呢?我甚至可能改变这个世界。”
</div>
</body>