CSS
 Computer >> コンピューター >  >> プログラミング >> CSS

CSSのalign-items:flex-endでフレックスアイテムを下揃えにする方法

align-items: flex-endでフレックスアイテムを下揃えにする

フレックスボックスレイアウトでは、CSSのalign-itemsプロパティにflex-endという値を指定することで、フレックスアイテムをコンテナの下部(交差軸の終端)に揃えて配置できます。

通常、フレックスアイテムはコンテナの上部から並びますが、flex-endを使うと、高さのあるコンテナの中でアイテムが下側に寄せて表示されます。

実装例

以下のコードを実行して、flex-endの動作を実際に確認してみてください。

<!DOCTYPE html>
<html>
   <head>
      <style>
         .mycontainer {
            display: flex;
            height: 300px;
            background-color: red;
            align-items: flex-end;
         }
         .mycontainer > div {
            background-color: orange;
            text-align: center;
            line-height: 60px;
            font-size: 30px;
            width: 100px;
            margin: 5px;
         }
      </style>
   </head>
   <body>
      <h1>Quiz</h1>
      <div class = "mycontainer">
         <div>Q1</div>
         <div>Q2</div>
         <div>Q3</div>
         <div>Q4</div>
      </div>
   </body>
</html>

コードのポイント

  • .mycontainerdisplay: flex;を指定して、フレックスコンテナを作成しています。
  • height: 300px;でコンテナに十分な高さを持たせることで、アイテムの配置の変化が分かりやすくなります。
  • align-items: flex-end;により、子要素(Q1〜Q4)がコンテナの下部に揃って配置されます。
  • 子要素にはオレンジ色の背景や幅を設定しており、配置結果を視覚的に確認できます。

align-itemsプロパティの主な値

align-itemsプロパティには、flex-end以外にも以下のような値を指定できます。

  • stretch(初期値):アイテムをコンテナの高さに合わせて伸縮させます。
  • flex-start:交差軸の始端(通常は上端)にアイテムを揃えます。
  • flex-end:交差軸の終端(通常は下端)にアイテムを揃えます。
  • center:交差軸方向の中央にアイテムを揃えます。
  • baseline:アイテム内のテキストのベースラインに合わせて揃えます。

このように、align-itemsプロパティの値を変えるだけで、フレックスアイテムの縦方向の配置を簡単にコントロールできます。

  1. CSSのflex-basisプロパティとは?フレックスアイテムの初期サイズ指定方法を解説

    CSSのflex-basisプロパティは、Flexboxレイアウトにおけるフレックスアイテム(子要素)の基本となる長さ(主軸方向の初期サイズ)を設定するためのプロパティです。flex-growやflex-shrinkが伸縮の挙動を制御するのに対し、flex-basisはアイテムが伸縮する前の基準サイズを決めます。 flex-basisで使える主な値 auto(初期値):要素自身のwidthまたはheightの値に依存します。 length:px、em、remなどの単位で固定値を指定します。 percentage:親コンテナの幅に対する割合(%)で指定します。 content:コンテンツの内容

  2. CSSのalign-contentプロパティにflex-start値を指定する方法

    CSSのalign-contentプロパティに値flex-startを指定すると、フレックスコンテナ内の複数行のアイテムをコンテナの先頭(開始位置)に寄せて配置できます。この値は、flex-wrap: wrap;などによってフレックスアイテムが複数行に折り返されている場合に有効になります。各行は互いに詰められ、クロス軸方向の開始側にまとめて配置されます。使用例以下のコードを実行すると、align-content: flex-start;の動作を確認できます。<!DOCTYPE html> <html>    <head> &nb