分享

用CSS3的Media Queries進行自適應網頁設計(Responsive Web D...

 看见就非常 2013-02-19

(Responsive Web Design)

from

所謂的自適應網頁設計主要是透過CSS設定,讓網頁版面的寬度,依照設計者的設定,以百分比的形式來呈現,所以頁面寬度的顯示是根據使用者的瀏覽設備解析度作輸出,因此可避免瀏覽器的橫向捲軸出現。(又稱為Adaptive Design)

液態排版 vs 固定寬度排版
液態排版的對比設計方式就叫「固定寬度(fixed-width)排版」,傳統上來說,比起液態方式,固定方式通常較受平面及視覺設計師歡迎,因為他們較習慣先決定整體版面輸出的範圍,而液態方式則需要費多一點心力去考量很多不同解析度的情況,雖然比較費工,但卻是互動介面不可或缺的重要設計。

應用Media Queries技巧
本篇要介紹的技巧,算是利用CSS3來簡化及強化Liquid Layout的設計活動,因為是針對解析度進行的排版設計,國外也有稱之為dynamic resolution dependent layout,不過更多是乾脆以達成此效果的功能名稱–CSS3 media queries來介紹這種技巧。

可以先欣賞一下使用Media Queries製作responsive design的網站:
Hicks Design
Colly.com
A List Apart

追加! 這裡還有非常棒的Media Queries應用的Gallery!

註:開啟上述網站後,試著調整一下瀏覽器的寬度,然後注意觀察上面元素的變化。

CSS3 Media Queries語法介紹

Max Width
若瀏覽區域的寬度小於600像素,則下方的CSS描述就會立即被套用:

1
2
3
4
5
6
7
@media screen and (max-width: 600px)
{
  .class
  {
    background: #ccc;
  }
}

也可以把要套用的描述獨立成外部檔案:

1
<link rel="stylesheet" media="screen and (max-width: 600px)" href="small.css" />

Min Width
若瀏覽區域的寬度大於900像素,則下方的CSS描述就會立即被套用:

1
2
3
4
5
6
7
@media screen and (min-width: 900px)
{
  .class
  {
    background: #666;
  }
}

Device Width
若瀏覽設備的可視範圍最大為480px,則下方的CSS描述就會立即被套用:(註:智慧型手機目前常見最大寬度為 480px,如iPhone or Android Phone)

1
2
3
4
5
6
7
@media screen and (max-device-width: 480px)
{
  .class
  {
    background: #000;
  }
}

針對iPhone4提供專用的css設定檔:

1
<link rel="stylesheet" media="only screen and (-webkit-min-device-pixel-ratio: 2)" type="text/css" href="iphone4.css" />

針對iPad的Portrait Mode(直立)與Landscape Mode(橫躺)兩種瀏覽模式給予不同的css設定檔:

1
2
<link rel="stylesheet" media="all and (orientation:portrait)" href="portrait.css">
<link rel="stylesheet" media="all and (orientation:landscape)" href="landscape.css">

IE8之前的版本不支援怎麼辦?
有三種辦法,請參考:
http:///resolution-specific-stylesheets/
http://www./experiment/ResolutionLayout/
http://plugins./project/MediaQueries

本站的DEMO
這個是本站做的小DEMO(HTML5&CSS3 based),供您參考,不過只有"先進一點"的瀏覽器可看 (可憐的IE8以下版本請看特別加料版XD)。

參考資料

相關文章:

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多