什麼是響應式設計?
響應式設計(Responsive Design)就是讓網站在手機、平板、桌機等不同尺寸的螢幕上都能自動調整版面,保持閱讀體驗順暢。想像你開啟一個網頁,在 12 吋電腦顯示器上看起來很完整;再把畫面縮小到手機時,內容也不會被擠壓或捲動太多,只需要輕觸滑動就能看到所有資訊。
為什麼要用響應式設計?
- 使用者數量:現在大多數人都是靠手機上網,若網站只適合桌機,就會失去大量流量。
- 搜尋引擎優化:Google 以「行動友善」作為排名因素之一;響應式設計能一次符合所有裝置的需求,省下多版面管理麻煩。
- 維護成本低:只要維護一套 HTML/CSS,就能同時支援所有尺寸,避免重複建置。
響應式設計是怎麼工作的?
- 流式格柵(Fluid Grid):使用百分比 (%) 來設定寬度,而非固定像素(px)。這樣在螢幕變大或縮小時,元素會跟著比例調整。
- 媒體查詢(Media Query):透過 CSS 指定不同斷點(breakpoint),當裝置達到該寬度就套用相對應的排版。典型斷點範例:
/* 600px 以下為手機版 */
@media (max-width: 600px) {
.col-6 { width: 100%; }
}
/* 601-900px 為平板版 */
@media (min-width: 601px) and (max-width: 900px) {
.col-6 { width: 50%; }
}
- 彈性圖片與影片:使用
max-width: 100%,讓媒體內容隨容器縮放,而不會溢出。
實際範例:一個簡易的響應式格柵
<!-- HTML -->
<div class="row">
<div class="col-6">區塊 A</div>
<div class="col-6">區塊 B</div>
<div class="col-12">區塊 C(全寬)</div>
</div>
.row { display: flex; flex-wrap: wrap; }
.col-6 { width: 50%; padding: 10px; box-sizing: border-box; }
.col-12 { width: 100%; padding: 10px; }
@media (max-width: 600px) {
.col-6, .col-12 { width: 100%; }
}
如何開始實作?
- 先規劃格柵:決定要使用的列數(常見 12 列)與每個區塊在不同裝置上的寬度。
- 寫好基本樣式:把所有元素都設定為百分比,確保可以流動調整。
- 加入媒體查詢:根據實際需求挑選斷點,並在適合的地方改變排版或隱藏不必要內容。
- 測試多裝置:使用瀏覽器開發者工具切換不同寬度,確認文字、按鈕、圖片都能正常顯示。
常見誤區與解決方案
- 把所有元素固定為 100% 寬度:這樣會讓手機版看起來太擁擠。建議只在必要時使用,全寬排版要留給重要內容。
- 忽略圖片尺寸:不加
max-width的圖片會超出容器,造成水平捲動;務必在 CSS 加上。 - 過度使用斷點:太多斷點會讓維護成本高。一般來說 2~3 個主要斷點已足夠,除非有特殊需求才再擴充。
小結
響應式設計並不是一個複雜的概念,而是透過簡單的 CSS 原則(流式格柵、媒體查詢、彈性媒體)讓網站能自動適配各種螢幕。只要先規劃好排版邏輯,接著寫出百分比寬度與斷點樣式,就能快速打造一個在手機、平板和桌機上都順手的網站。
