SHU BLOG

BLOG NEWS ブログ

  • ARTICLE
    2020.12.28
  • CATEGORY
TITLE

【CSS】minmax()の使い方、トラックの幅の最小値と最大値を指定する!

SHU[シュウ]

1991年生まれ九州の宮崎県育ち
高校卒業後、愛知県で自動車関係の
お仕事に5年間勤め、WEB業界に
転職致しました。
趣味:サッカー観戦、ゲーム、映画、漫画
基本インドアです!笑

シュウ
シュウ
今回は【CSS】minmax()の使い方、トラックの幅の最小値と最大値を指定する!の解説になります!

こんな方に読んでほしい

  • CSSを学び始めた方へ
  • Grid Layoutについて学びたい方へ
  • 今回はminmax()でトラックの幅の最小値と最大値の解説になります

前回、Grid Layoutの使い方、基本的なグリッドレイアウトを指定する!
【CSS】Grid Layoutの使い方、グリッドレイアウトを指定する!

repeat()関数の記事はこちらから
【CSS】auto-fit・auto-fillの使い方、トラックの幅の指定を繰り返す!

グリッドレイアウトとは

グリッドレイアウトとは

グリッドレイアウトとは
グリッドレイアウトは2次元レイアウトとも呼ばれ、HTML、CSSを使って
水平方向、垂直方向の両方に沿って要素を配置できます。

グリッドレイアウト

グリッドレイアウトでは、Grid Layoutコンテナを格子状のマス目のように考えることができます。
要素の長さや、順番に関わらず、上記のように2次元的にレイアウトすることが可能です。
1方向に関わらず、自由に要素を配置できます。

親要素に、display:grid、inline-gridを指定すると、その要素をGrid Layoutコンテナに指定できます。
また、Grid Layoutコンテナの子要素は自動的にグリッドアイテムとなります。

Grid Layoutコンテナ (グリッド全体を表す要素になります)
グリッドアイテム (グリッドのエリアに配置する要素になります)
書き方は以下のようになります

親要素 {
	display: grid / inline-grid;
	grid-template-rows: 値;
	grid-template-columns: minmax(最小値, 最大値);
	
	/*--内訳
	①display: grid;
	②display: inline-grid;
	①か②のどちらかを指定します。
	--*/
}
指定できる値
  • minmax(最小値, 最大値)
    今回はここを解説!
    グリッドレイアウトでトラックの幅の最小値と最大値を指定します。
  • display:grid / inline-grid 
    解説の記事ありますよ
    要素をGrid Layoutコンテナに指定できます。

minmax()の使い方について

minmax()の使い方について

minmax()とは、グリッドレイアウトでトラックの幅の最小値と最大値を指定します。
最初に、minmaxを指定し、最小値カンマ(,)最大値で区切って指定していきます。
書き方は以下のようになります

親要素 {
	display: grid / inline-grid;
	grid-template-rows: 値;
	grid-template-columns: minmax(最小値, 最大値);
	
	/*--内訳
	①display: grid;
	②display: inline-grid;
	①か②のどちらかを指定します。
	--*/
}
指定できる値
  • 数値+単位
    「px」、「%」、「fr」のいずれかの数値と単位で指定します。

minmaxの使用例

minmaxの使用例

minmax()グリッドレイアウトでトラックの幅の最小値と最大値を指定します。
上記の画像を例として、「最小値 = 100px」、「最大値 = 1fr」になり、2トラック目は 200pxとなります。

ウィンドウを狭めた際に、「アイテム①、③」は、最小値の100pxになります。
ウィンドウを広げた際に、「アイテム①、③」は、最大値の1frになります。
「アイテム②、④」は、固定値の200pxになります。

minmaxの使用例

item①
item②
item③
item④
<div class="grid-container">
<div class="grid-item">item①</div>
<div class="grid-item">item②</div>
<div class="grid-item">item③</div>
<div class="grid-item">item④</div>
</div>
 /*--親要素--*/
.grid-container {
	display: grid;
	grid-template-columns: minmax(100px, 1fr) 200px;

	/*--以下装飾--*/
	background-color: #ffffff;
	border: solid 5px #fb6158;
}

/*--子要素--*/
.grid-item {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	color: #ffffff;
	background-color: #1ece50; /*--各アイテム 背景色のみ変更しております--*/
	padding: 30px;
	box-sizing: border-box;
}

minmax / auto-fillの使用例

auto-fillプロパティとは、グリッドコンテナ(親要素)の大きさに合わせて繰り返します。
グリッドコンテナ(親要素)にスペースが余る場合、空のグリッドが作られます。

auto-fillの場合は、表示領域の大きさに合わせて、空のグリッドが作られます。

最小値の120pxになります。
最大値の1frになります。
ウィンドウを広げがることで、2つの値の間で幅を自動で調整し、空のグリッドアイテムの
トラック幅が確保されます。

minmax / auto-fillの使用例

item①
item②
item③
item④
<div class="grid-container">
<div class="grid-item">item①</div>
<div class="grid-item">item②</div>
<div class="grid-item">item③</div>
<div class="grid-item">item④</div>
</div>
 /*--親要素--*/
.grid-container {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));

	/*--以下装飾--*/
	background-color: #ffffff;
	border: solid 5px #fb6158;
}

/*--子要素--*/
.grid-item {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	color: #ffffff;
	background-color: #1ece50; /*--各アイテム 背景色のみ変更しております--*/
	padding: 30px;
	box-sizing: border-box;
}

minmax / auto-fitの使用例

minmax / auto-fit

auto-fitプロパティとは、グリッドコンテナ(親要素)の大きさに合わせて繰り返します。
minmaxとauto-fitを組み合わせることで、常に右側に空白ができないように伸縮します。

最小値の120pxになります。
最大値の1frになります。
ウィンドウを広げがることで、余白の部分が「0px」とみなされます。
そのため「1fr」を指定することで、その余白部分を埋めてくれます。

minmax / auto-fitの使用例

item①
item②
item③
item④
<div class="grid-container">
<div class="grid-item">item①</div>
<div class="grid-item">item②</div>
<div class="grid-item">item③</div>
<div class="grid-item">item④</div>
</div>
 /*--親要素--*/
.grid-container {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));

	/*--以下装飾--*/
	background-color: #ffffff;
	border: solid 5px #fb6158;
}

/*--子要素--*/
.grid-item {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	color: #ffffff;
	background-color: #1ece50; /*--各アイテム 背景色のみ変更しております--*/
	padding: 30px;
	box-sizing: border-box;
}

関連記事

【STEP01】repeat関数の使い方、トラックの幅の指定を繰り返す!
repeat関数の使い方、トラックの幅の指定を繰り返す!
【STEP02】auto-fit・auto-fillの使い方、トラックの幅の指定を繰り返す!
auto-fit・auto-fillの使い方、トラックの幅の指定を繰り返す!

まとめ

今回はこれで以上です。

POINT
  • minmax()とは、グリッドレイアウトでトラックの幅の最小値と最大値を指定します。
  • 最初に、minmaxを指定し、最小値カンマ(,)最大値で区切って指定していきます。
スポンサーリンク

SHU

1991年生まれ九州の宮崎県育ち高校卒業後、愛知県で自動車関係のお仕事に5年間勤め、WEB業界に転職致しました。
趣味:サッカー観戦、ゲーム、映画、漫画基本インドアです!笑
つくる、しあわせをテーマとして主にWEBに関する様々な情報を発信しています。

最新記事

関連記事

オススメ記事

月別アーカイブ

page_top