10月17日(金)講義内容-フレキシブルボックス(CSS3) –

Pocket

フレキシブルボックスを使用すれば、floatを使用せずに横並びにできます。
今まで難しかった、ブロック内での子要素の「上下左右の中央揃え」「下揃え」「均等揃え」などが安易にできるようになります。

まだ正式な物ではないので、講義用のサンプルサイトは、chrome or safariで確認しましょう。

 

講義用サンプルサイト

■参考サイト
・フレキシブルボックスレイアウト
・CSS3プロパティ一覧(モジュール別)

◆display: flex(値)

【旧記述】display: box;
新記述】display: flex;

指定された要素内のブロック要素(div や dl や p など)は、自動的に横並びになり、
かつ最大の高さを持つ要素に高さを揃えてくれる。

◆box-sizingプロパティ

ボックスサイズ(width, height) の算出方法を指定することができる。
[値]
・content-box
・border-box
・inherit

◆box-orient【旧】/flex-direction【新】プロパティ

box-orient プロパティは、ボックスの子要素を水平または垂直にレイアウトするかどうかを指定する。
[旧値]
・horizontal
・vertical
・inline-axis
・block-axis
・inherit

[新値]
・row
・row-reverse
・column
・column-reverse

◆box-ordinal-group【旧】/order【新】プロパティ

【読み】ボックス-オーディナル-グループ【旧】/オーダー【新】

box-ordinal-groupプロパティは、ボックス内の子要素に並び順を割り当てる際に使用する。
[値]
・自然数(0を含まない正の整数)で子要素の並び順を指定できる。
※初期値は1

◆box-pack【旧】/justify-content【新】プロパティ

ボックス内の子要素の横方向の配置を指定する際に使用。
ボックス内にスペースが余った場合に、そのスペースをどのように要素間に割り付けるかを
指定することが出来る。
[旧値]
・start:
・end
・center
・justify(ジャスティファイ)/均等揃え

[新値]

flex-start 内部のボックスを、フレキシブルボックスの先頭に詰めて配置します。(初期値
flex-end 内部のボックスを、フレキシブルボックスの末尾に詰めて配置します。
center 内部のボックスを、フレキシブルボックスの中央に詰めて配置します。
space-between 内部のボックスを、フレキシブルボックス全体へ均等に配置します。先頭と末尾は詰めて配置されます。
space-around 内部のボックスを、フレキシブルボックス全体へ均等に配置します。先頭と末尾にはスペースが入ります。

◆box-align【旧】/align-items【新】プロパティ

box-alignプロパティは、ボックス内の子要素の縦方向の揃え位置を指定する際に使用する。
[旧値]
・start
・end
・center
・baseline
・stretch(初期値)

[新値]

flex-start ボックスの先頭をフレックスボックスの斜め軸に沿った先頭位置に揃えます。
flex-end ボックスの末尾をフレックスボックスの斜め軸に沿った末尾位置に揃えます。
center ボックスをフレックスボックスの斜め軸に沿って中央で揃えます。
baseline ボックスを基準となるフレックスボックスの斜め軸のベースラインに揃えて配置します。
stretch ボックスをフレックスボックスの斜め軸に沿って自動的に揃えます。(初期値

 

displayプロパティ値は①box、②flexbox、③flexの順で変わってきました。そして、この3時代に応じて、他のプロパティも、名称が変更されています。

フレキシブルボックスレイアウトのプロパティ一覧
現在のプロパティ③ 過去のプロパティ① 概要
過去のプロパティ②
  • 「過去のプロパティ①」はFirefoxが-moz-を付けて使用。「過去のプロパティ②」はIE10が-ms-を付けて使用
  • 「現在のプロパティ③」はChromeが-webkit-を付けて使用。Operaはベンダー接頭辞無し
フレックス コンテナ側の指定(親要素)
display:flex display:box ブロックレベル表示のコンテナを生成(displayプロパティ値)
display:flexbox
display:inline-flex 該当なし インライン表示のコンテナを生成(displayプロパティ値)
該当なし
flex-direction box-direction アイテムの並び順を軸方向に従って正順、逆順で指定
flex-direction
flex-wrap 該当なし コンテナのサイズを越えたアイテムの改行方法を指定
flex-wrap
flex-flow 該当なし コンテナのサイズを越えたアイテムの改行方法を指定
該当なし
justify-content box-pack アイテムの主軸方向の整列方法を指定
flex-pack
align-items box-align アイテムの、交差軸方向の整列方法を指定
flex-align
align-content 該当なし 複数行にわたるアイテムの、交差軸方向の整列方法を指定
該当なし
フレックス アイテム側の指定(子要素)
order box-ordinal-group アイテムの並び順を数値で指定
flex-order
flex box-flex アイテムに割り当てる幅を指定
flex
flex-grow 該当なし アイテム内の余白の取り方を指定
該当なし
flex-shrink 該当なし アイテム内の余白の取り方を指定
該当なし
flex-basis 該当なし アイテム内の余白の取り方を指定
該当なし
align-self 該当なし アイテムの、交差軸方向の整列方法を指定
該当なし

コメントする

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください