プログラミング備忘録 foo

左画像+右テキスト(縦中央揃え)

目的

  • 左に画像を置き、右にテキストを置きたい。
  • 両者を縦で中央揃えにしたい。

実行結果

サンプル画像①
森の奥に差し込む柔らかな光が、木々の葉を黄金色に染める。小川のせせらぎと鳥のさえずりが調和し、静かな時間が流れる。風に揺れる草の香りが心を落ち着け、自然の息吹を感じさせる一瞬。

解説

  • height(高さ)が大きい方を基準にして、小さい方が縦で中央揃えになります。

HTML

<div class="layout_4_1">
	<div><img src="../../image/sample-1.jpg" alt="サンプル画像①" /></div>
	<div>森の奥に差し込む柔らかな光が、木々の葉を黄金色に染める。小川のせせらぎと鳥のさえずりが調和し、静かな時間が流れる。風に揺れる草の香りが心を落ち着け、自然の息吹を感じさせる一瞬。</div>
</div>

CSS

.layout_4_1 {
	align-items: center;
	display: flex;
	width: 92%;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 40px;
	margin-left: auto;
}

.layout_4_1 > div:first-child {
	flex-grow: 0;
	flex-shrink: 0;
	flex-basis: 30%;
	margin-top: 0px;
	margin-right: 10px;
	margin-bottom: 0px;
	margin-left: 0px;
}

.layout_4_1 > div:last-child {
	font-size: 16px;
	line-height: 1.7;
	flex-grow: 1;
	flex-shrink: 1;
	flex-basis: 0;
}
.layout_4_1 {
	align-items: center;
	display: flex;
	width: 92%;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 20px;
	margin-left: auto;
}

.layout_4_1 > div:first-child {
	flex-grow: 0;
	flex-shrink: 0;
	flex-basis: 40%;
	margin-top: 0px;
	margin-right: 10px;
	margin-bottom: 0px;
	margin-left: 0px;
}

.layout_4_1 > div:first-child img {
	width: 100%;
}

.layout_4_1 > div:last-child {
	font-size: 14px;
	line-height: 1.7;
	flex-grow: 1;
	flex-shrink: 1;
	flex-basis: 0;
}