CSS3 – flex

概要

floatプロパティーは、ブロック要素を横方向に並べることができるが、要素を順に並べていくので、望んでいる配置対して意図しない結果となることがある。

flex要素は、コンテナーの中でそれらが整然と配置されるよう、より簡明な指定を可能とする。

特にブロック要素を水平に均等配置したり、nav、article、aside要素などを一定の比率で横に並べたりするときに重宝する。

書式

要素が配置されるflexはコンテナ側と、実際に配置する要素の双方で指定する。

  • 親要素にdisplay: flex;を記述
  • 子要素にflex: n;を記述

たとえば.parentクラスの要素の中に.childクラスの要素を水平配置する場合

.childクラスのブロック要素を複数htmlに書くと、それらが.parentクラスの要素内に均等に水平配置される。

また2つの子要素.child1と.child2をm対nの幅の比率で水平配置したい場合は以下のように記述する。

コンテナ内に配置される要素の幅の比率

実行例

均等配置

以下の例は、3つのdiv要素を親要素の中で水平に均等配置する。

HTML

CSS

実行結果

比率指定

次の例は、複数の要素に値を指定して、その値の比率で水平配置する例。

HTML

CSS

結果

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です