CSS3 多列


CSS3 可以將文字內容設計成像報紙一樣的多列佈局,如下實例:

   

php中文網-  php中文網php中文網(www.php.cn)提供了最完整的程式設計技術基礎教學, 介紹了HTML、CSS、Javascript、Python,Java,Ruby,C,PHP , MySQL等各種程式語言的基礎知識。 同時本站中也提供了大量的線上實例,透過實例,您可以更好的學習程式設計。


瀏覽器支援

表格中的數字表示支援該方法的第一個瀏覽器的版本號碼。

緊接在數字後面的 -webkit- 或 -moz- 為指定瀏覽器的前綴。


CSS3 多列屬性

本章節我們將學習以下幾個CSS3 的多列屬性:

  • column-count

  • column-gap

  • column -rule-style

  • column-rule-width

  • column-rule-color

  • column-rule

  • #column-span

  • column-width


#CSS3 建立多列

column-count屬性指定了需要分割的列數。

以下實例將<div> 元素中的文字分為3 列:

#實例

<!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;
}
</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 屬性指定了列與列間的邊框樣式:

實例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php中文网(php.cn)</title> 
<style> 
.newspaper
{
	column-count:3;
	column-gap:40px;
	column-rule-style:dotted;

	/* Firefox */
	-moz-column-count:3;
	-moz-column-gap:40px;
	-moz-column-rule-style:dotted;

	/* Safari and Chrome */
	-webkit-column-count:3;
	-webkit-column-gap:40px;
	-webkit-column-rule-style:dotted;
}
</style>
</head>
<body>

<p><b>注意:</b> Internet Explorer 9及更早 IE 版本浏览器不支持 column-count 属性。</p>

<div class="newspaper">
当我年轻的时候,我梦想改变这个世界;当我成熟以后,我发现我不能够改变这个世界,我将目光缩短了些,决定只改变我的国家;当我进入暮年以后,我发现我不能够改变我们的国家,我的最后愿望仅仅是改变一下我的家庭,但是,这也不可能。当我现在躺在床上,行将就木时,我突然意识到:如果一开始我仅仅去改变我自己,然后,我可能改变我的家庭;在家人的帮助和鼓励下,我可能为国家做一些事情;然后,谁知道呢?我甚至可能改变这个世界。
</div>

</body>
</html>

#執行實例»點擊"運行實例"按鈕查看在線實例

column-rule-width 屬性指定了兩列的邊框厚度:

##實例
##
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php中文网(php.cn)</title> 
<style> 
.newspaper
{
	column-count:3;
	column-gap:40px;
	column-rule-style:outset;
	column-rule-width:10px;

	/* Firefox */
	-moz-column-count:3;
	-moz-column-gap:40px;
	-moz-column-rule-style:outset;
	-moz-column-rule-width:10px;

	/* Safari and Chrome */
	-webkit-column-count:3;
	-webkit-column-gap:40px;
	-webkit-column-rule-style:outset;
	-webkit-column-rule-width:1px;
}
</style>
</head>
<body>

<p><b>注意:</b> Internet Explorer 9及更早 IE 版本浏览器不支持 column-count 属性。</p>


<div class="newspaper">
当我年轻的时候,我梦想改变这个世界;当我成熟以后,我发现我不能够改变这个世界,我将目光缩短了些,决定只改变我的国家;当我进入暮年以后,我发现我不能够改变我们的国家,我的最后愿望仅仅是改变一下我的家庭,但是,这也不可能。当我现在躺在床上,行将就木时,我突然意识到:如果一开始我仅仅去改变我自己,然后,我可能改变我的家庭;在家人的帮助和鼓励下,我可能为国家做一些事情;然后,谁知道呢?我甚至可能改变这个世界。
</div>

</body>
</html>

運行實例»

點擊"運行實例" 按鈕查看在線實例

#column-rule-color
屬性指定了兩列的邊框顏色:

實例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php中文网(php.cn)</title> 
<style> 
.newspaper
{
	column-count:3;
	column-gap:40px;
	column-rule-style:outset;
	column-rule-color:#ff0000;

	/* Firefox */
	-moz-column-count:3;
	-moz-column-gap:40px;
	-moz-column-rule-style:outset;
	-moz-column-rule-color:#ff0000;

	/* Safari and Chrome */
	-webkit-column-count:3;
	-webkit-column-gap:40px;
	-webkit-column-rule-style:outset;
	-webkit-column-rule-color:#ff0000;
}
</style>
</head>
<body>

<p><b>注意:</b> Internet Explorer 9及更早 IE 版本浏览器不支持 column-count 属性。</p>


<div class="newspaper">
当我年轻的时候,我梦想改变这个世界;当我成熟以后,我发现我不能够改变这个世界,我将目光缩短了些,决定只改变我的国家;当我进入暮年以后,我发现我不能够改变我们的国家,我的最后愿望仅仅是改变一下我的家庭,但是,这也不可能。当我现在躺在床上,行将就木时,我突然意识到:如果一开始我仅仅去改变我自己,然后,我可能改变我的家庭;在家人的帮助和鼓励下,我可能为国家做一些事情;然后,谁知道呢?我甚至可能改变这个世界。
</div>

</body>
</html>


運行實例»

點擊"運行實例" 按鈕查看線上實例

#column-rule 屬性是column-rule-* 所有屬性的簡寫。

以下實例設定了列直接的邊框的厚度,樣式及顏色:

實例

<!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;

	-moz-column-rule:4px outset #ff00ff; /* Firefox */
	-webkit-column-rule:4px outset #ff00ff; /* Safari and Chrome */
	column-rule:4px outset #ff00ff;
}
</style>
</head>
<body>

<p><b>注意:</b> Internet Explorer 9及更早 IE 版本浏览器不支持 column-count 属性。</p>

<div class="newspaper">
当我年轻的时候,我梦想改变这个世界;当我成熟以后,我发现我不能够改变这个世界,我将目光缩短了些,决定只改变我的国家;当我进入暮年以后,我发现我不能够改变我们的国家,我的最后愿望仅仅是改变一下我的家庭,但是,这也不可能。当我现在躺在床上,行将就木时,我突然意识到:如果一开始我仅仅去改变我自己,然后,我可能改变我的家庭;在家人的帮助和鼓励下,我可能为国家做一些事情;然后,谁知道呢?我甚至可能改变这个世界。
</div>

</body>
</html>

運行實例»

點擊"運行實例" 按鈕查看線上實例


指定元素跨越多少列

以下實例指定<h2> 元素跨越所有列:

實例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php中文网(php.cn)</title> 
<style> 
.newspaper
{
	column-count:3;
	-moz-column-count:3; /* Firefox */
	-webkit-column-count:3; /* Safari and Chrome */

}
h2
{
	column-span:all;
	-webkit-column-span:all; /* Safari and Chrome */
}
</style>
</head>
<body>

<p><b>注意:</b> Internet Explorer 9及更早 IE 版本浏览器不支持 column-count 属性。</p>

<div class="newspaper">
<h2>英国维斯米斯特教堂碑文</h2>
当我年轻的时候,我梦想改变这个世界;当我成熟以后,我发现我不能够改变这个世界,我将目光缩短了些,决定只改变我的国家;当我进入暮年以后,我发现我不能够改变我们的国家,我的最后愿望仅仅是改变一下我的家庭,但是,这也不可能。当我现在躺在床上,行将就木时,我突然意识到:如果一开始我仅仅去改变我自己,然后,我可能改变我的家庭;在家人的帮助和鼓励下,我可能为国家做一些事情;然后,谁知道呢?我甚至可能改变这个世界。
</div>

</body>
</html>

運行實例»

點擊"運行實例" 按鈕查看線上實例


指定列的寬度

column-width 屬性指定了列的寬度。

實例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php中文网(php.cn)</title> 
<style> 
.newspaper
{
	column-width:100px;
	-moz-column-width:100px; /* Firefox */
	-webkit-column-width:100px; /* Safari and Chrome */
}
</style>
</head>
<body>

<p><b>注意:</b> Internet Explorer 9及更早 IE 版本浏览器不支持 column-count 属性。</p>

<div class="newspaper">
当我年轻的时候,我梦想改变这个世界;当我成熟以后,我发现我不能够改变这个世界,我将目光缩短了些,决定只改变我的国家;当我进入暮年以后,我发现我不能够改变我们的国家,我的最后愿望仅仅是改变一下我的家庭,但是,这也不可能。当我现在躺在床上,行将就木时,我突然意识到:如果一开始我仅仅去改变我自己,然后,我可能改变我的家庭;在家人的帮助和鼓励下,我可能为国家做一些事情;然后,谁知道呢?我甚至可能改变这个世界。
</div>

</body>
</html>

運行實例»

點擊"運行實例" 按鈕查看線上實例


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 的簡寫


#