現有網頁簡易改成支援RWD


現有網頁視覺設計的結構若沒有很複雜,可以通過CSS架構重組,利用模組化結構簡易實現RWD自適應頁面的效果。

- 依循Box觀念的結構化架框

頁面版面框架結構若未依循Box結構規範,先修訂為結構化架框(參照下方全寬視覺版面結構修訂)

- 在<head></head>內加入viewport宣告

<meta name="viewport" content="width=device-width; initial-scale=1; maximum-scale=1; user-scalable=0;">

- 主box寬度用%來定寬度

當列區有2欄以上的版面結構時,用BOX區塊並設為float來達成多欄效果。
最外框的box,將寬度換算成%來訂,不要用px來指定寬度,padding-lef和padding-right需為0
每一欄需有邊界時,在每一欄的box內再建一個box來定padding-lef和padding-right

- Media Queries調整不同寬度時的CSS變化

建議可以另建一個css檔,建media rule都放在這個CSS檔內會比較好管理
幾個必要的寬度定義,小於最大閱讀寬度時,最小手機寬度等等...
@media screen and (max-width:999px){內放符合此寬度要改變的CSS定義}
@media screen and (max-width:500px){內放符合此寬度要改變的CSS定義}
建議順序一致,也就是用max-width來判斷時,最好由上到下都是max-width,是min-width則都用min-width,這樣會比較好控管
細節可以參考 http://www.w3schools.com/cssref/css3_pr_mediaquery.asp 說明

- 其他相關

  • 文字可以盡量用em替代px,1em=13px來換算,可以為小數
  • image 以CSS定義width=100%,若圖片原始大小小於media width時則要加設max-width
  • 在@media中最好加上 !important (優先權)以避免tag為class無優先權時無法變更原來屬性的問題

全寬視覺的版面結構

按照主背景不同由上而下切分為幾個橫列,每個橫列的Box就各各自塞入背景圖
用wrap_ct來控制和調整內容區的寬度並自動置放於螢幕中間
box有塞背景圖,min-height: hight:100% backgroud-color 保持彈性

.wrap_ct {
max-width: 999px;//閱讀視覺的寬度
width: 100%;//必要條件
height: 100%;//可選
margin-right: auto; margin-left: auto;//必要條件
}

<div id="(ROW1區)">
<div class="wrap_ct"></div>
</div>
<div id="(ROW2區)">
<div class="wrap_ct"></div>
</div>
<div id="(ROW3區)">
<div class="wrap_ct"></div>
</div>


這個網誌中的熱門文章

沒印表機沒關係 便利商店找印去

被時代淘汱的英文怎麼說

探訪神秘的烏法魯神殿

色情廣告視窗關不掉? 動手解解看吧~

玩轉水晶石工作室 妝點個人部落