Html、CSS基礎 – 排版:

更新於 發佈於 閱讀時間約 13 分鐘

※ Layout佈局介紹:網頁畫面整體的框架

設計稿解構:

raw-image

佈局:

  • header:表頭
  • main:主要內容
  • footer:表尾
  • row:列
  • colum:行
raw-image

元件:

raw-image

欄位:

raw-image

排版屬性:

raw-image

※ Inline– Block範例:

1.建立layout_example專案:

raw-image

2.建立多欄式結構:index.html

<!-- inline block -->
<!-- 標題 -->
<h2>inline-block</h2>
<!-- 多欄式 -->
<div class="row">
<div class="col"></div
><div class="col"></div
><div class="col"></div>
</div>

3.建立多欄式樣式:style.css

/* Global */
* {
box-sizing: border-box;
position: relative;
}/* inline-block */
.row {
border: 1px solid #000;
height: 500px;
}

.col {
/* 三欄式寫法 */
width: 33.333333%;
height: 400px;
border: 1px solid red;
display: inline-block;
}

成果顯示:

raw-image

4.建立假元件結構:index.html

	<div class="row">
<div class="col">
<div class="card"></div></div
><div class="col">
<div class="card"></div></div
><div class="col">
<div class="card"></div></div>
</div>

5.建立假元件樣式:style.css

/* inline-block */
.row {
border: 1px solid #000;
/* height: 500px;不需要了 */
background-color: #aacbff;
}

.col {
/* 三欄式寫法 */
width: 33.333333%;
/* height: 400px;不需要了 */
border: 1px solid #fff;
background-color: #2f66bc;
display: inline-block;
/* 強制向上對齊 */
vertical-align: top;
/* 建立中間間距 ,在左右兩邊推出一個距離*/
padding-left: 16px;
padding-right: 16px;
}
/* card */
.card{
height: 300px;
/* 寬度隨著layout去做改變 */
width: 100%;
background-color: pink;
}

成果顯示:

raw-image

※ 畫面置中排版範例:

index.html

<div class="container">

<!-- inline block -->
<!-- 標題 -->
<h2>inline-block</h2>
<!-- 多欄式 -->
<div class="row">
<div class="col">
<div class="card"></div></div
><div class="col">
<div class="card"></div></div
><div class="col">
<div class="card"></div></div>
</div>

style.css

/* container 畫面置中排版*/
.container{
display: block;
margin: 0 auto;
width: 960px;
border: 1px solid #000;
}

成果顯示:

raw-image

※ Float:

raw-image

※ Float範例:

index.html

<h2>Float</h2>
<div class="float-row">
<div class="float-col">
<div class="card">1</div>
</div>
<div class="float-col">
<div class="card">2</div>
</div>
<div class="float-col">
<div class="card">3</div>
</div>
</div>

style.css

/* float */
.float-row {
border: 2px solid blue;
}

.float-col {
border: 1px solid #fff;
background-color: #2f66bc;
/* 三欄式寫法 */
width: 33.333333%;
/* 建立中間間距 ,在左右兩邊推出一個距離*/
padding-left: 16px;
padding-right: 16px;
/* 向左浮動的邏輯 ,會脫離原本block的屬性*/
float: left;
}

成果顯示:

raw-image


※ Float浮動問題範例:

raw-image

index.html

	<!-- Float -->
<h2>Float</h2>
<div class="float-row">
<div class="float-col">
<div class="card">1</div>
</div>
<div class="float-col">
<div class="card">2</div>
</div>
<div class="float-col">
<div class="card">3</div>
</div>
</div>
<div class="footer"></div>

style.css

.footer{
background-color: #333;
height: 100px;
}

成果顯示:

raw-image

※ 解決Float浮動問題範例:

方法一:

raw-image

index.html

<!-- 清除浮動 -->
<div class="clearfix"></div>

style.css

/* 清除浮動 */
.clearfix{
clear: both;
}

成果顯示:

raw-image

方法二:使用偽元素

style.css

/* 使用偽元素清除浮動 */
.float-row:after{
content: '';
display: block;
clear: both;
}

成果顯示:

raw-image

※ Float和Inline– Block各自的問題有什麼?

Float:

  • 脫離正常文流:浮動元素不再佔據原本的位置,可能導致父元素高度塌陷。
  • 需要清除浮動:為了讓父元素包住浮動子元素,必須使用 clearfix
  • 元素重疊或排版錯亂。
  • 不易垂直對齊。

inline-block:

  • 空白間距問題換行會在 inline-block元素之間產生間距4px。
  • 垂直對齊困難。

差別成果顯示:

raw-image

※ Flex:彈性排版

Flex 排版的核心概念:排版是建立在 父子層結構之上的。

  • 父層(容器)要設定 display: flexdisplay: inline-flex
  • 子層(項目)才會受到 Flex 排版的影響。
raw-image


index.html

<!-- Flex -->
<h2>Flex</h2>
<div class="flex-row">
<div class="flex-col">
<div class="card">1</div>
</div>
<div class="flex-col">
<div class="card">2</div>
</div>
<div class="flex-col">
<div class="card">3</div>
</div>
<div class="flex-col">
<div class="card">4</div>
</div>

</div>

style.css

/* flex */
.flex-row{
border: 2px solid orange;
background-color: #aacbff;
/* 彈性排版 */
display: flex;
/* 自適應排版,抓出區間 */
/* justify-content: space-between; */
/* 項目左右都留空,空間平均分配在項目周圍 */
/* justify-content: space-around; */
/* 所有項目靠主軸起點對齊(預設值) */
/* justify-content: flex-start; */
/* 所有項目靠主軸終點對齊 */
/* justify-content: flex-end; */
}
.flex-col{
border: 1px solid #fff;
background-color: #2f66bc;
/* 建立中間間距 ,在左右兩邊推出一個距離*/
padding-left: 16px;
padding-right: 16px;
/* 三欄式寫法 */
width: 200px
}

成果顯示:

raw-image

※ Flex:填滿功能

index.html

	<!-- Flex -->
<h2>Flex</h2>
<div class="flex-row">
<div class="flex-col flex-col-1">
<div class="card">1</div>
</div>
<div class="flex-col flex-col-2">
<div class="card" >2</div>
</div>
<div class="flex-col flex-col-3">
<div class="card">3</div>
</div>
</div>

style.css

.flex-col-1{
width: 200px
}
.flex-col-2{
/* 彈性排版比例 */
/* 用1:1的比例去做排列 */
flex: 1;
}
.flex-col-3{
flex: 1;
}

成果顯示:

raw-image

※ Flex:解決瀏覽器適應的問題

  • 使用「Can I use」工具確認支援度。
  • 加入前綴詞(對舊版瀏覽器有幫助)。
  • 使用 flex-wrap 處理換行問題,某些瀏覽器預設不會自動換行,導致排版錯亂。

※ Flex使用手冊:

網址:https://css-tricks.com/snippets/css/a-guide-to-flexbox/

raw-image


















留言
avatar-img
留言分享你的想法!
avatar-img
奧莉薇走在成為後端工程師之路上
22會員
164內容數
全端網頁開發專業知識分享
2025/08/08
※ 微互動範例: 1.建立btns_example專案: 2.建立HTML結構:index.html <body> <div class="section section1"></div> <div class="section section2"></div> <div class="
Thumbnail
2025/08/08
※ 微互動範例: 1.建立btns_example專案: 2.建立HTML結構:index.html <body> <div class="section section1"></div> <div class="section section2"></div> <div class="
Thumbnail
2025/08/01
※ 偽元素: 針對某個元素的特定部分進行樣式設定,而不需要在 HTML 中新增額外的標籤。 常見的區塊元素像 <div>, <p>, <span>, <button>, <section> 等都可以使用。 偽元素常用於加上裝飾、圖示、引號等視覺效果,並常搭配 content 屬性與定位(pos
Thumbnail
2025/08/01
※ 偽元素: 針對某個元素的特定部分進行樣式設定,而不需要在 HTML 中新增額外的標籤。 常見的區塊元素像 <div>, <p>, <span>, <button>, <section> 等都可以使用。 偽元素常用於加上裝飾、圖示、引號等視覺效果,並常搭配 content 屬性與定位(pos
Thumbnail
2025/07/31
※ Can I use:超實用的前端開發工具網站 網址:https://caniuse.com/ 功能:查詢各種 HTML、CSS、JavaScript 等語法或功能在不同瀏覽器上的支援情況。 使用方式: 加上前綴:解決部分支援的問題 .box { position: absolute;
Thumbnail
2025/07/31
※ Can I use:超實用的前端開發工具網站 網址:https://caniuse.com/ 功能:查詢各種 HTML、CSS、JavaScript 等語法或功能在不同瀏覽器上的支援情況。 使用方式: 加上前綴:解決部分支援的問題 .box { position: absolute;
Thumbnail
看更多
你可能也想看
Thumbnail
2025 vocus 推出最受矚目的活動之一——《開箱你的美好生活》,我們跟著創作者一起「開箱」各種故事、景點、餐廳、超值好物⋯⋯甚至那些讓人會心一笑的生活小廢物;這次活動不僅送出了許多獎勵,也反映了「內容有價」——創作不只是分享、紀錄,也能用各種不同形式變現、帶來實際收入。
Thumbnail
2025 vocus 推出最受矚目的活動之一——《開箱你的美好生活》,我們跟著創作者一起「開箱」各種故事、景點、餐廳、超值好物⋯⋯甚至那些讓人會心一笑的生活小廢物;這次活動不僅送出了許多獎勵,也反映了「內容有價」——創作不只是分享、紀錄,也能用各種不同形式變現、帶來實際收入。
Thumbnail
嗨!歡迎來到 vocus vocus 方格子是台灣最大的內容創作與知識變現平台,並且計畫持續拓展東南亞等等國際市場。我們致力於打造讓創作者能夠自由發表、累積影響力並獲得實質收益的創作生態圈!「創作至上」是我們的核心價值,我們致力於透過平台功能與服務,賦予創作者更多的可能。 vocus 平台匯聚了
Thumbnail
嗨!歡迎來到 vocus vocus 方格子是台灣最大的內容創作與知識變現平台,並且計畫持續拓展東南亞等等國際市場。我們致力於打造讓創作者能夠自由發表、累積影響力並獲得實質收益的創作生態圈!「創作至上」是我們的核心價值,我們致力於透過平台功能與服務,賦予創作者更多的可能。 vocus 平台匯聚了
Thumbnail
在這個章節中,我們介紹了HTML的基本概念,包括其作為結構化標記語言的特性、應用領域,以及主要使用者。這些知識為後續的深入學習和實踐奠定了基礎,幫助讀者了解HTML在現代網頁開發中的重要性。
Thumbnail
在這個章節中,我們介紹了HTML的基本概念,包括其作為結構化標記語言的特性、應用領域,以及主要使用者。這些知識為後續的深入學習和實踐奠定了基礎,幫助讀者了解HTML在現代網頁開發中的重要性。
Thumbnail
CSS 盒模型是理解和設計網頁佈局的核心概念。它包括元素的內容、填充、邊框和外邊距。
Thumbnail
CSS 盒模型是理解和設計網頁佈局的核心概念。它包括元素的內容、填充、邊框和外邊距。
Thumbnail
不論是平面設計、介面設計,都能見排版這一詞。而排版的作用,即在明確的設計目標中,將所有元素做有組織的安排,精確地傳達訊息。
Thumbnail
不論是平面設計、介面設計,都能見排版這一詞。而排版的作用,即在明確的設計目標中,將所有元素做有組織的安排,精確地傳達訊息。
Thumbnail
CSS 是控制網頁外觀的語言,應用於網頁設計、UI/UX 設計、電子商務和移動應用開發。主要使用者包括前端開發者、UI/UX 設計師和網頁設計師。CSS 的特性有樣式控制、層疊優先級、響應式設計及分離內容與樣式。
Thumbnail
CSS 是控制網頁外觀的語言,應用於網頁設計、UI/UX 設計、電子商務和移動應用開發。主要使用者包括前端開發者、UI/UX 設計師和網頁設計師。CSS 的特性有樣式控制、層疊優先級、響應式設計及分離內容與樣式。
Thumbnail
這篇文章教你如何製作側邊欄,包括準備工作、HTML和CSS的部分,還有一些互動效果。文章涵蓋了連結、圖片、超連結、大小、顏色、排版、flex和滑鼠互動等內容。
Thumbnail
這篇文章教你如何製作側邊欄,包括準備工作、HTML和CSS的部分,還有一些互動效果。文章涵蓋了連結、圖片、超連結、大小、顏色、排版、flex和滑鼠互動等內容。
Thumbnail
你好,在下最近在學習開發web,學了html css js,也得出一些心得,由於網路上已有許多教學,所以我會著重在如何開發出to do List,以及解釋我寫的程式碼。相關的教學我會直接貼網址。如果我有什麼地方出錯,或者是可以寫得更好,歡迎在下方留言,討論。 首先先介紹我的開發環境: 我用了vs
Thumbnail
你好,在下最近在學習開發web,學了html css js,也得出一些心得,由於網路上已有許多教學,所以我會著重在如何開發出to do List,以及解釋我寫的程式碼。相關的教學我會直接貼網址。如果我有什麼地方出錯,或者是可以寫得更好,歡迎在下方留言,討論。 首先先介紹我的開發環境: 我用了vs
Thumbnail
排版微系列調專門分享如何透過一些調整讓設計與排版更好看,並且每張設計都會說明為何調整的原因,以及原本設計可能有的問題。 如果你是設計初學者那這份內容會很適合你,因為會很細節的去講解排版原因,如果你看完喜歡,我每月會有三篇微調詳解固定分享給訂閱會員,歡迎訂閱。
Thumbnail
排版微系列調專門分享如何透過一些調整讓設計與排版更好看,並且每張設計都會說明為何調整的原因,以及原本設計可能有的問題。 如果你是設計初學者那這份內容會很適合你,因為會很細節的去講解排版原因,如果你看完喜歡,我每月會有三篇微調詳解固定分享給訂閱會員,歡迎訂閱。
Thumbnail
排版微系列調專門分享如何透過一些調整讓設計與排版更好看,並且每張設計都會說明為何調整的原因,以及原本設計可能有的問題。 如果你是設計初學者那這份內容會很適合你,因為會很細節的去講解排版原因,如果你看完喜歡,我每月會有三篇微調詳解固定分享給訂閱會員,歡迎訂閱。
Thumbnail
排版微系列調專門分享如何透過一些調整讓設計與排版更好看,並且每張設計都會說明為何調整的原因,以及原本設計可能有的問題。 如果你是設計初學者那這份內容會很適合你,因為會很細節的去講解排版原因,如果你看完喜歡,我每月會有三篇微調詳解固定分享給訂閱會員,歡迎訂閱。
Thumbnail
製作簡報前,我們先認識基本的排版觀念,掌握幾個大原則,就可以讓簡報看起來很專業囉!
Thumbnail
製作簡報前,我們先認識基本的排版觀念,掌握幾個大原則,就可以讓簡報看起來很專業囉!
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News