CSS3のマルチカラムレイアウト「column-fill」プロパティの使い方を解説
CSS3のcolumn-fillプロパティは、マルチカラム(段組み)レイアウトにおいて、各カラムにコンテンツをどのように振り分けて表示するかを制御するためのプロパティです。
column-fillプロパティとは
column-fillプロパティには、主に以下の値を指定できます。
- auto:コンテンツが順番にカラムへ流し込まれ、高さが指定されている場合は最初のカラムから順に埋められます。
- balance(初期値):すべてのカラムの高さができるだけ均等になるように、コンテンツが分配されます。
実装例
以下のコードは、column-fillプロパティを使ったマルチカラムレイアウトの実装例です。column-countで4列の段組みを作成し、column-gapでカラム間の余白を、column-rule-styleでカラム間の罫線スタイルを指定しています。
<html>
<head>
<style>
.multi {
/* カラム数の指定 */
-webkit-column-count: 4;
-moz-column-count: 4;
column-count: 4;
/* カラム間の余白 */
-webkit-column-gap: 40px;
-moz-column-gap: 40px;
column-gap: 40px;
/* カラム間の罫線スタイル */
-webkit-column-rule-style: solid;
-moz-column-rule-style: solid;
column-rule-style: solid;
/* カラムの塗りつぶし方法 */
column-fill: auto;
}
</style>
</head>
<body>
<div class = "multi">
Tutorials Point originated from the idea that there exists a class of readers who respond
better to online content and prefer to learn new skills at their own pace from the comforts
of their drawing rooms. The journey commenced with a single tutorial on HTML in 2006 and
elated by the response it generated, we worked our way to adding fresh tutorials to our
repository which now proudly flaunts a wealth of tutorials and allied articles on topics
ranging from programming languages to web designing to academics and much more.
</div>
</body>
</html>
コードのポイント
- -webkit-や-moz-といったベンダープレフィックスを付けることで、古いバージョンのChrome・Safari・Firefoxでも動作するようにしています。
- column-count: 4により、テキストが4つのカラムに分割されて表示されます。
- column-fill: autoを指定することで、コンテンツは先頭のカラムから順番に流し込まれます。要素に高さが設定されていない場合は、balanceと同様の挙動になります。
表示結果
上記のコードを実行すると、テキストが4列の段組みで表示され、各カラムの間には40pxの余白と実線の罫線が描画されます。

-
CSS3のマルチカラムレイアウト:column-countプロパティの使い方
CSS3のマルチカラムレイアウトにおけるcolumn-countプロパティは、要素の内容を何列に分割して表示するかを指定するためのプロパティです。新聞や雑誌のような段組みレイアウトを、HTMLの複雑な構造を組むことなく簡単に実現できます。 このプロパティを使うことで、テキストが自動的に指定した列数に分割され、ブラウザが内容量に応じて各列の高さを調整してくれます。 column-countプロパティの実装例 以下のコードを実行すると、CSSでcolumn-countプロパティを実装した動作を確認できます。 <html> <head> <style> .mult
-
CSS3のtransitionショートハンド(短縮)プロパティの使い方
CSSのtransitionショートハンド(短縮)プロパティを使うと、transition-property(遷移対象のプロパティ)、transition-duration(遷移にかかる時間)、transition-timing-function(変化の速度カーブ)、transition-delay(遅延時間)という4つの個別プロパティを、たった1行にまとめて指定することができます。値は「プロパティ名 → 時間 → タイミング関数 → 遅延」の順にスペース区切りで記述します。複数のプロパティを同時にアニメーションさせたい場合は、それぞれの指定をカンマ(,)で区切って並べます。記述例以下は、tr