在響應式網頁設計中,常需要處理不同裝置間版面的切換,以表格為例:在桌機上用表格呈現內容,而在行動裝置上使用卡片式版面,這樣的設計優化能夠提升使用者在不同裝置上的瀏覽體驗。
為了達成這種優化,有以下幾種做法:
- 製作兩個版面,利用斷點來進行版面切換
- 製作一個共用版面,搭配 CSS Grid Layout 進行設計,在手機版時調整
<table>
的屬性,達成卡片的視覺效果
本篇介紹第二個做法,這麼做可以降低程式碼的複雜度,提升程式碼可重用性,專案維護性也較高。
在響應式網頁設計中,常需要處理不同裝置間版面的切換,以表格為例:在桌機上用表格呈現內容,而在行動裝置上使用卡片式版面,這樣的設計優化能夠提升使用者在不同裝置上的瀏覽體驗。
為了達成這種優化,有以下幾種做法:
<table>
的屬性,達成卡片的視覺效果本篇介紹第二個做法,這麼做可以降低程式碼的複雜度,提升程式碼可重用性,專案維護性也較高。
CSS Grid 佈局系統能夠幫助我們輕鬆控制網格中元素位置和大小,跟 Flex 比較:
display
:定義容器類型(grid
/ inline-grid
/ subgrid
)grid-template-columns
:定義網格欄的大小和數量grid-template-rows
:定義網格列的大小和數量grid-gap
/ grid-column-gap
/ grid-row-gap
:設定網格間的間距grid-template-areas
:定義網格空間位置,由單個或數個字串組成,搭配 grid-area
使用justify-items
/ align-items
/ place-items
:定義所有元素的對齊方式,同 flex 用法grid-column
/ grid-column-start
/ grid-column-end
:控制元素在網格中所佔欄空間位置grid-row
/ grid-row-start
/ grid-row-end
:控制元素在網格中所佔列空間位置grid-area
:定義元素空間名稱,搭配 grid-template-areas
使用justify-self
/ align-self
/ place-self
:定義單一元素的對齊方式,同 flex 用法grid-auto-columns
:定義預設欄的大小grid-auto-rows
:定義預設列的大小grid-auto-flow
:控制自動佈局的方向和順序在開發響應式網站(Responsive Web Design)常會需要製作等比例寬高圖片,不管螢幕尺寸如何縮放,圖片都能保持在固定比例,做法蠻多,以下列出其中兩種做法:
Update your browser to view this website correctly. Update my browser now