範例 8 - 常見三種排版
基本樣式範例練習網址: https://codepen.io/peiqun/pen/zVReNa
完整範例網址: https://codepen.io/peiqun/pen/dwYajq
HTML 結構
<div class="container">
<div class="row">
<div class="col">
<img src="path/to/img" width="60">
<div class="con">
<h3>為什麼一定要吃甜點?</h3>
<p>...</p>
</div>
</div>
<div class="col">
<img src="path/to/img" width="60">
<div class="con">
<h3>為什麼一定要吃甜點?</h3>
<p>...</p>
</div>
</div>
<div class="col">
<img src="path/to/img" width="60">
<div class="con">
<h3>為什麼一定要吃甜點?</h3>
<p>...</p>
</div>
</div>
</div>
<div class="row type2">
<div class="col">
<img src="path/to/img" width="100">
<div class="con">
<h3>為什麼一定要吃甜點?</h3>
<p>...</p>
</div>
</div>
<div class="col">
<img src="path/to/img" width="100">
<div class="con">
<h3>為什麼一定要吃甜點?</h3>
<p>...</p>
</div>
</div>
<div class="col">
<img src="path/to/img" width="100">
<div class="con">
<h3>為什麼一定要吃甜點?</h3>
<p>...</p>
</div>
</div>
</div>
<div class="row type3">
<div class="col">
<img src="path/to/img" width="150">
<div class="con">
<h3>為什麼一定要吃甜點?</h3>
<p>...</p>
</div>
</div>
<div class="col reverse">
<img src="path/to/img" width="150">
<div class="con">
<h3>為什麼一定要吃甜點?</h3>
<p>...</p>
</div>
</div>
<div class="col">
<img src="path/to/img" width="150">
<div class="con">
<h3>為什麼一定要吃甜點?</h3>
<p>...</p>
</div>
</div>
</div>
</div>
步驟解析
- 基本樣式設定

- 在
.row上設定寬度及水平置中後,設定圓角、內距與外距、字體及背景顏色 - 在
.col和.con上設定內距 - 調整
h3和p的外距
- 在
- 在
.row上設定display: flex

- 在
.col上設定display: flex

- 透過
align-items將.col交錯軸內容對齊軸線最前方

- 在
.type2 .col上設定flex-direction: column,將內容調整為垂直排列

- 在
.type2 .col加上text-align: center將文字水平置中,再將align-items設為center覆蓋前面樣式讓圖片置中

- 透過
flex-direction將.type3內容調整為垂直排列

- 在
.type3 .col上設定display: flex,並透過align-items將交錯軸內容置中

- 在
.reverse上設定flex-direction: row-reverse將內容反轉
