CSS3多列布局

在CSS3中,也新增了一些关于文本布局的几个比较简单的属性。通过这些新增的属性,我们可以对文本进行简单的排版,就想报纸和杂志那样。

新增的部分属性,以及浏览器支持情况:

属性 浏览器支持
column-count IE Firefox(-moz-) Chrome(-webkit-) Safari(-webkit-) Opera
column-gap IE Firefox(-moz-) Chrome(-webkit-) Safari(-webkit-) Opera
column-rule IE Firefox(-moz-) Chrome(-webkit-) Safari(-webkit-) Opera

注:

  • 在Firefox浏览器中,要加(-moz-)前缀。
  • 在Chrome和Safari浏览器中,要加(-webkit-)前缀。
  • 对于IE浏览器,只支持IE10以及以上版本。

新增的属性以及描述:

属性 描述
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 的简写属性

通过这几个新增属性的定义,我可以对文本进行简单的排版(Firefox浏览器)

*{
	-moz-column-count: 3;
	-moz-column-gap: 40px;
	-moz-column-rule: 4px outset #ff0000;"
}

上面的CSS样式是元素中的文本分为3列,列之间的距离为40px,列之间用颜色为#ff0000、宽度为4px的线分开。

同样,我们也可以对一些元素中的内容进行排版。

例如我们可以对列表进行排版:

部分代码为(Firefox浏览器):

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style>
ul {
    -moz-column-count: 3;
    -moz-column-gap: 40px;
    -moz-column-rule: 4px outset #ff0000;
}
li {
    background: #0CF;
    border: #069 1px solid;
    display: inline-block;
    width: 150px;
    margin: 5px 0;
}
</style>
</head>
<body>

<ul>
    <li style="height:50px">1</li>
    <li style="height:100px">2</li>
    <li style="height:80px">3</li>
    <li style="height:60px">4</li>
    <li style="height:70px">5</li>
    <li style="height:50px">6</li>
    <li style="height:100px">7</li>
    <li style="height:80px">8</li>
    <li style="height:90px">9</li>
    <li style="height:30px">10</li>
</ul>
</body>
</html>

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索浏览器
, firefox
, webkit
, 属性
, 元素
, css3 column 多列布局
, 之间
, Column布局
Count(列)
css3多列、css3、css多列布局、css3多栏布局、css3弹性盒模型,以便于您获取更多的相关知识。

时间: 2024-12-04 20:52:06

CSS3多列布局的相关文章

css3 column 多列布局-关于css3的多列column

问题描述 关于css3的多列column 如题,当同时设置column-width与column-count与外层容器的width,此时的column-width似乎并没有什么卵用. 举例: <style> body{font:14px/1.5 georgia,serif,sans-serif;} p{margin:0;padding:5px 10px;background:#eee;} h1{margin:10px 0;font-size:16px;} .test{ width:628px;

CSS3中flexbox布局效果代码

CSS3包含了许多模块,使用不同的布局更加容易Flexbox通常能让我们更好的操作他的子元素布局,例如:  如果元素容器没有足够的空间,我们无需计算每个元素的宽度,就可以设置他们在同一行:  可以快速让他们布局在一列:  可以方便让他们对齐容器的左.右.中间等:  无需修改结构就可以改变他们的显示顺序:  如果元素容器设置百分比和视窗大小改变,不用提心未指定元素的确切宽度而破坏布局,因为容器中的每个子元素都可以自动分配容器的宽度或高度的比例. lexbox的术语 在详细阅读这篇文章之前,我们很有

CSS3与页面布局学习总结(四)——页面布局大全

一.负边距与浮动布局 1.1.负边距 所谓的负边距就是margin取负值的情况,如margin:-100px,margin:-100%.当一个元素与另一个元素margin取负值时将拉近距离.常见的功能如下: 1.1.1.向上移动 当多个元素同时从标准流中脱离开来时,如果前一个元素的宽度为100%宽度,后面的元素通过负边距可以实现上移.当负的边距超过自身的宽度将上移,只要没有超过自身宽度就不会上移,示例如下: <!DOCTYPE html> <html> <head> &

使用Div+CSS进行网页的多列布局

这几天我在用Div+CSS进行网页三列布局的时候突然想到的这样一个方法,这个想法自己都觉得有些疯狂,如果其中有什么不对的地方还是请各位多多指教. 当您需要写一个三列布局的时候,一般情况下我会选择使用如下的DIV布局方式: 使用这样的嵌套方式无疑可以使代码出错的概率减少很多,但同时这样的布局也略显复杂,对于后期的维护也略显不便.我们在布局导航时经常会使用到一个方法,那就是使用 列表来进行布局,而导航可以形容为多列式的布局,既然如此,那么我们也就可以使用来进行页面的多列布局.

CSS多列布局实现方法大全

 摘要: 多列布局在网站应用中也是经常见到的,今天就分享4中多列布局. display:table 代码如下: <style> .table { width: auto; min-width: 1000px; margin: 0 auto; padding: 0; display:table; } .tableRow { display: table-row; } .tableCell { border: 1px solid red; display: table-cell; width: 3

八种创建等高列布局

高度相等列在Web页面设计中永远是一个网页设计师的需求.如果所有列都有相同的背景色,高度相等还是不相等都无关紧要,因为你只要在这些列的父元素中设置一个背景色就可以了.但是,如果一个或多个列需要单独设置自己的背景色,那么它的视觉完整性的设计就显得非常重要了.大家都知道当初Table实现等高列布局是多么的简单,但是我们使用CSS来创建等高列布局并非是那么容易的事情. 如果一个设计是固定宽度(非流体的宽度设计),那么实现多列等高效果是相当的容易.最好的技术就是使用Dan Cederholm的Faux

CSS教程:使用ul进行网页的多列布局

 几天在用CSS写三列布局的时候突然想到的这样一个方法,这个想法自己都觉得有些疯狂,如果其中有什么不对的地方请各位不吝指教.   当需要写一个三列布局的时候,一般情况下我会选择使用如下的DIV布局方式:     使用这样的嵌套方式无疑可以使代码出错的概率减少很多,但同时这样的布局也略显复杂,对于后期的维护也略显不便.我们在布局导航时经常会使用到一个方法,那就是使用<ul>列表来进行布局,而导航可以形容为多列式的布局,既然如此,那么我们也就可以使用<ul>来进行页面的多列布局.  

CSS使用ul进行网页的多列布局

  几天在用CSS写三列布局的时候突然想到的这样一个方法,这个想法自己都觉得有些疯狂,如果其中有什么不对的地方请各位不吝指教. 当需要写一个三列布局的时候,一般情况下我会选择使用如下的DIV布局方式: 使用这样的嵌套方式无疑可以使代码出错的概率减少很多,但同时这样的布局也略显复杂,对于后期的维护也略显不便.我们在布局导航时经常会使用到一个方法,那就是使用〈ul〉列表来进行布局,而导航可以形容为多列式的布局,既然如此,那么我们也就可以使用〈ul〉来进行页面的多列布局.         这是一个固定

css-三列布局,左右固定,中间自适应?

问题描述 三列布局,左右固定,中间自适应? <style> body{ margin:0; padding:0; font-size:30px; font-weight:bold} .header{height: 100px;background: #777;} .content{height:700px;background: #000;} .left{ width:240px; height:600px; background:#ccc; position:absolute; left:0