【CSS】スマホ表示時に画像配置を変更する方法

どうも!会社に勤めながら、副業をやっているJavaプログラマ、函南助教授ことカンナミユート(@yuuto_kannami )です。

【CSS】スマホ表示時に画像配置を変更する方法

スマホ表示時(レスポンシブ時)に画像配置を変更する方法をサクッとご紹介! 言葉だと説明しにくいのですが、PC表示だと左に「タイトル」と「説明文」右に「画像」を表示、スマホ表示時だと「タイトル」「画像」「説明文」の順番に表示する方法です。

スポンサーリンク


画像が右のレスポンシブレイアウト

表示例

iPhone XR ブルーは鮮やかでポップな色味

タイトル部分

メイン部分(こちらに説明文を入力。)

テスト

テスト

テスト

コード

HTML

<div class="container-img-right">
<div class="container-img">
画像
</div>
<div class="container-title">
タイトル
</div>
<div class="container-main">
メイン
</div>
<div class="container-footer">
フッター
</div>
</div>
<div class="container-img-right"> <div class="container-img"> 画像 </div> <div class="container-title"> タイトル </div> <div class="container-main"> メイン </div> <div class="container-footer"> フッター </div> </div>
<div class="container-img-right">
	<div class="container-img">
		画像
	</div>
	<div class="container-title">
		タイトル
	</div>
	<div class="container-main">
		メイン
	</div>
	<div class="container-footer">
		フッター
	</div>
</div>

CSS

/* 全体 */
.container-img-right {
display: grid;
grid-template-columns: 50% 50%;
grid-template-rows: 90px 5fr 1fr;
-ms-display: grid;
margin: 20px 0;
}
/* 画像 */
.container-img-right .container-img {
grid-column: 2 / 3;
grid-row: 1 / 3;
}
.container-img-right .container-img img{
margin: 0;
}
/* タイトル */
.container-img-right .container-title {
grid-column: 1 / 2;
grid-row: 1 / 2;
padding-right: 50px;
}
/* メイン */
.container-img-right .container-main {
grid-column: 1 / 2;
grid-row: 2 / 3;
padding-right: 50px;
}
/* フッター */
.container-img-right .container-footer {
grid-column: 1 / 3;
grid-row: 3 / 4;
text-align: center;
}
/* レスポンシブ */
@media screen and (max-width: 1100px) {
/* 全体 */
.container-img-right {
grid-template-columns: 100%;
grid-template-rows: 90px;
}
/* 画像 */
.container-img-right .container-img {
grid-column: 1 / 2;
grid-row: 2 / 3;
}
/* タイトル */
.container-img-right .container-title {
grid-column: 1 / 2;
grid-row: 1 / 2;
padding-right: 0;
}
/* メイン */
.container-img-right .container-main {
grid-column: 1 / 2;
grid-row: 3 / 4;
padding-right: 0;
}
/* フッター */
.container-img-right .container-footer {
grid-column: 1 / 2;
grid-row: 4 / 5;
}
}
/* 色変更---------- */
/* 画像 */
.container-img-right .container-img {
background-color: #61AE24;
}
/* タイトル */
.container-img-right .container-title {
background-color: #F02475;
}
/* メイン */
.container-img-right .container-main {
background-color: #F27435;
}
/* フッター */
.container-img-right .container-footer {
background-color: #00A1CB;
}
/* 全体 */ .container-img-right { display: grid; grid-template-columns: 50% 50%; grid-template-rows: 90px 5fr 1fr; -ms-display: grid; margin: 20px 0; } /* 画像 */ .container-img-right .container-img { grid-column: 2 / 3; grid-row: 1 / 3; } .container-img-right .container-img img{ margin: 0; } /* タイトル */ .container-img-right .container-title { grid-column: 1 / 2; grid-row: 1 / 2; padding-right: 50px; } /* メイン */ .container-img-right .container-main { grid-column: 1 / 2; grid-row: 2 / 3; padding-right: 50px; } /* フッター */ .container-img-right .container-footer { grid-column: 1 / 3; grid-row: 3 / 4; text-align: center; } /* レスポンシブ */ @media screen and (max-width: 1100px) { /* 全体 */ .container-img-right { grid-template-columns: 100%; grid-template-rows: 90px; } /* 画像 */ .container-img-right .container-img { grid-column: 1 / 2; grid-row: 2 / 3; } /* タイトル */ .container-img-right .container-title { grid-column: 1 / 2; grid-row: 1 / 2; padding-right: 0; } /* メイン */ .container-img-right .container-main { grid-column: 1 / 2; grid-row: 3 / 4; padding-right: 0; } /* フッター */ .container-img-right .container-footer { grid-column: 1 / 2; grid-row: 4 / 5; } } /* 色変更---------- */ /* 画像 */ .container-img-right .container-img { background-color: #61AE24; } /* タイトル */ .container-img-right .container-title { background-color: #F02475; } /* メイン */ .container-img-right .container-main { background-color: #F27435; } /* フッター */ .container-img-right .container-footer { background-color: #00A1CB; }
/* 全体 */
.container-img-right {
	display: grid;
	grid-template-columns: 50% 50%;
	grid-template-rows: 90px 5fr 1fr;
	-ms-display: grid;
	margin: 20px 0;
}
/* 画像 */
.container-img-right .container-img {
	grid-column: 2 / 3;
	grid-row: 1 / 3;
}
.container-img-right .container-img img{
	margin: 0;
}
/* タイトル */
.container-img-right .container-title {
	grid-column: 1 / 2;
	grid-row: 1 / 2;
	padding-right: 50px;
}
/* メイン */
.container-img-right .container-main {
	grid-column: 1 / 2;
	grid-row: 2 / 3;
	padding-right: 50px;
}
/* フッター */
.container-img-right .container-footer {
	grid-column: 1 / 3;
	grid-row: 3 / 4;
	text-align: center;
}

/* レスポンシブ */
@media screen and (max-width: 1100px) {
	/* 全体 */
	.container-img-right {
		grid-template-columns: 100%;
		grid-template-rows: 90px;
	}
	/* 画像 */
	.container-img-right .container-img {
		grid-column: 1 / 2;
		grid-row: 2 / 3;
	}
	/* タイトル */
	.container-img-right .container-title {
		grid-column: 1 / 2;
		grid-row: 1 / 2;
		padding-right: 0;
	}
	/* メイン */
	.container-img-right .container-main {
		grid-column: 1 / 2;
		grid-row: 3 / 4;
		padding-right: 0;
	}
	/* フッター */
	.container-img-right .container-footer {
		grid-column: 1 / 2;
		grid-row: 4 / 5;
	}
}

/* 色変更---------- */
/* 画像 */
.container-img-right .container-img {
	background-color: #61AE24;
}
/* タイトル */
.container-img-right .container-title {
	background-color: #F02475;
}
/* メイン */
.container-img-right .container-main {
	background-color: #F27435;
}
/* フッター */
.container-img-right .container-footer {
	background-color: #00A1CB;
}

画像が右のレスポンシブレイアウト

表示例

iPhone XR ブルーは鮮やかでポップな色味

タイトル部分

メイン部分(こちらに説明文を入力。)

テスト

テスト

テスト

コード

HTML

<div class="container-img-left">
<div class="container-img">
画像
</div>
<div class="container-title">
タイトル
</div>
<div class="container-main">
メイン
</div>
<div class="container-footer">
フッター
</div>
</div>
<div class="container-img-left"> <div class="container-img"> 画像 </div> <div class="container-title"> タイトル </div> <div class="container-main"> メイン </div> <div class="container-footer"> フッター </div> </div>
<div class="container-img-left">
	<div class="container-img">
		画像
	</div>
	<div class="container-title">
		タイトル
	</div>
	<div class="container-main">
		メイン
	</div>
	<div class="container-footer">
		フッター
	</div>
</div>

CSS

/* 全体 */
.container-img-left {
display: grid;
grid-template-columns: 50% 50%;
grid-template-rows: 90px 5fr 1fr;
-ms-display: grid;
margin: 20px 0;
}
/* 画像 */
.container-img-left .container-img {
grid-column: 1 / 2;
grid-row: 1 / 3;
}
.container-img-left .container-img img{
margin: 0;
}
/* タイトル */
.container-img-left .container-title {
grid-column: 2 / 3;
grid-row: 1 / 2;
padding-left: 50px;
}
/* メイン */
.container-img-left .container-main {
grid-column: 2 / 3;
grid-row: 2 / 3;
padding-left: 50px;
}
/* フッター */
.container-img-left .container-footer {
grid-column: 1 / 3;
grid-row: 3 / 4;
text-align: center;
}
/* レスポンシブ */
@media screen and (max-width: 1100px) {
/* 全体 */
.container-img-left {
grid-template-columns: 100%;
grid-template-rows: 90px;
}
/* 画像 */
.container-img-left .container-img {
grid-column: 1 / 2;
grid-row: 2 / 3;
}
/* タイトル */
.container-img-left .container-title {
grid-column: 1 / 2;
grid-row: 1 / 2;
padding-left: 0;
}
/* メイン */
.container-img-left .container-main {
grid-column: 1 / 2;
grid-row: 3 / 4;
padding-left: 0;
}
/* フッター */
.container-img-left .container-footer {
grid-column: 1 / 2;
grid-row: 4 / 5;
}
}
/* 色変更---------- */
/* 画像 */
.container-img-left .container-img {
background-color: #61AE24;
}
/* タイトル */
.container-img-left .container-title {
background-color: #F02475;
}
/* メイン */
.container-img-left .container-main {
background-color: #F27435;
}
/* フッター */
.container-img-left .container-footer {
background-color: #00A1CB;
}
/* 全体 */ .container-img-left { display: grid; grid-template-columns: 50% 50%; grid-template-rows: 90px 5fr 1fr; -ms-display: grid; margin: 20px 0; } /* 画像 */ .container-img-left .container-img { grid-column: 1 / 2; grid-row: 1 / 3; } .container-img-left .container-img img{ margin: 0; } /* タイトル */ .container-img-left .container-title { grid-column: 2 / 3; grid-row: 1 / 2; padding-left: 50px; } /* メイン */ .container-img-left .container-main { grid-column: 2 / 3; grid-row: 2 / 3; padding-left: 50px; } /* フッター */ .container-img-left .container-footer { grid-column: 1 / 3; grid-row: 3 / 4; text-align: center; } /* レスポンシブ */ @media screen and (max-width: 1100px) { /* 全体 */ .container-img-left { grid-template-columns: 100%; grid-template-rows: 90px; } /* 画像 */ .container-img-left .container-img { grid-column: 1 / 2; grid-row: 2 / 3; } /* タイトル */ .container-img-left .container-title { grid-column: 1 / 2; grid-row: 1 / 2; padding-left: 0; } /* メイン */ .container-img-left .container-main { grid-column: 1 / 2; grid-row: 3 / 4; padding-left: 0; } /* フッター */ .container-img-left .container-footer { grid-column: 1 / 2; grid-row: 4 / 5; } } /* 色変更---------- */ /* 画像 */ .container-img-left .container-img { background-color: #61AE24; } /* タイトル */ .container-img-left .container-title { background-color: #F02475; } /* メイン */ .container-img-left .container-main { background-color: #F27435; } /* フッター */ .container-img-left .container-footer { background-color: #00A1CB; }
/* 全体 */
.container-img-left {
	display: grid;
	grid-template-columns: 50% 50%;
	grid-template-rows: 90px 5fr 1fr;
	-ms-display: grid;
	margin: 20px 0;
}
/* 画像 */
.container-img-left .container-img {
	grid-column: 1 / 2;
	grid-row: 1 / 3;
}
.container-img-left .container-img img{
	margin: 0;
}
/* タイトル */
.container-img-left .container-title {
	grid-column: 2 / 3;
	grid-row: 1 / 2;
	padding-left: 50px;
}
/* メイン */
.container-img-left .container-main {
	grid-column: 2 / 3;
	grid-row: 2 / 3;
	padding-left: 50px;
}
/* フッター */
.container-img-left .container-footer {
	grid-column: 1 / 3;
	grid-row: 3 / 4;
	text-align: center;
}

/* レスポンシブ */
@media screen and (max-width: 1100px) {
	/* 全体 */
	.container-img-left {
		grid-template-columns: 100%;
		grid-template-rows: 90px;
	}
	/* 画像 */
	.container-img-left .container-img {
		grid-column: 1 / 2;
		grid-row: 2 / 3;
	}
	/* タイトル */
	.container-img-left .container-title {
		grid-column: 1 / 2;
		grid-row: 1 / 2;
		padding-left: 0;
	}
	/* メイン */
	.container-img-left .container-main {
		grid-column: 1 / 2;
		grid-row: 3 / 4;
		padding-left: 0;
	}
	/* フッター */
	.container-img-left .container-footer {
		grid-column: 1 / 2;
		grid-row: 4 / 5;
	}
}

/* 色変更---------- */
/* 画像 */
.container-img-left .container-img {
	background-color: #61AE24;
}
/* タイトル */
.container-img-left .container-title {
	background-color: #F02475;
}
/* メイン */
.container-img-left .container-main {
	background-color: #F27435;
}
/* フッター */
.container-img-left .container-footer {
	background-color: #00A1CB;
}

スポンサーリンク