Flexbox を使った、要素の上下中央寄せ、均等割りの方法をご紹介します。
※ このドキュメントは2016年5月26日に勧告候補になったドキュメント「CSS Flexible Box Layout Module Level 1 W3C Candidate Recommendation, 26 May 2016」を参照しています。
「Webサイトからお問い合わせが来ない…」とお悩みの方必見!
当サイトのノウハウを詰め込んだ『Web集客の無料ガイド』をご提供
Flexbox を使った、要素の上下中央寄せ、均等割りの方法
flex-container に「 align-items 」プロパティを使用します。 align-items は縦の位置を調整するプロパティです。
各プロパティの値は下記の通りで、例えば上下中央寄せにしたい場合は、center を指定します。
サンプルコード
<!DOCTYPE html> <html lang="ja"> <head> <title>Flexboxテスト</title> <meta charset="UTF-8"> </head> <style> .container{ display: flex; width: 500px; height: 500px; background-color: #aaa; flex-flow: wrap; justify-content: space-around; /* 縦方向の並び順*/ /* flex-start:上揃え(デフォルト) flex-end:下揃え center:中央揃え baseline:ベースライン stretch:伸縮 */ align-items: center; } .item1{ background-color: yellow; } .item2{ background-color: blue; } .item3{ background-color: green; } </style> <body> <div class="container"> <div class="flex-item item1"> <p>TEST HOGE</p><p>TEST HOGE</p> </div> <div class="flex-item item2"> <p>TEST HOGE</p> </div> <div class="flex-item item3"> <p>TEST HOGE</p><p>TEST HOGE</p><p>TEST HOGE</p> </div> </div> </body> </html>
実行結果
上下左右中央寄せ( align-items と justyify-content )
今回は上下の並び替えを行うためのプロパティ「 align-items 」の紹介でした。
上下左右中を央寄せにする場合は「 align-items 」と「 justyify-content 」を組み合わせることで可能です。
.flex-container{ justify-content: center; align-items: center; }
Flexbox とは
CSS 3で追加された機能が Flexbox( Flexible Box Layout Module )です。これまでよりも簡単に要素を横並びにレイアウトできます。
Flexbox を使うことで、
- 高さの自動調整
- 並び順の指定
- 簡単に余白を指定
などが可能です。