HTML5實踐 -- CSS3 Media Queries


  轉載請注明原創地址:http://www.cnblogs.com/softlover/archive/2012/11/25/2787429.html

  demo查看地址:http://www.webdesignerwall.com/demo/media-queries/

  

  CSS2允許你對特定media類型制定樣式,例如針對屏幕或者打印機。css3提供了更加強大的media queries,你可以針對不同media類型設置表達式,根據不同的條件設置不同的樣式。例如你可以為大屏幕設置一種樣式,為mobile設置另外一種樣式。這個功能相當強大,你可以不修改頁面內容的情況下,為不同設備提供不同的樣式效果。下面的課程我們將會介紹到一些使用該技術的站點。

 

 

  CSS3 Media Queries

  打開我的demo頁面,調整瀏覽器打大小,查看頁面布局變化情況。

  Max Width

  當頁面視圖區域小於600px寬度的時候,css會被使用到。

@media screen and (max-width: 600px) {
  .class {
    background: #ccc;
  }
}

  你也可以使用下面的方式,在頁面的<head>中引用外部css文件。

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

  Min Width

  當視圖區域大於900px寬度的時候,css會被使用到。

@media screen and (min-width: 900px) {
  .class {
    background: #666;
  }
}

  多個 Media Queries

  你可以把多個media queries組合在一起,當視圖區域寬度在600px到900px之間的時候,會使用下面的css。

@media screen and (min-width: 600px) and (max-width: 900px) {
  .class {
    background: #333;
  }
}

  設備Width

  下面的css會在 max-device-width為480px的時候使用,例如iphone。

  note:max-device-width指的是設備實際分辨率,max-width指的是可是區域尺寸。

@media screen and (max-device-width: 480px) {
  .class {
    background: #000;
  }
}

  針對 iPhone 4

  下面的時針對iphone4的css。

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

  針對 iPad

  你也可以在ipad上檢查定位(portrait 或者 landscapse)。

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

  針對Internet Explorer的Media Queries

  因為ie8以及之前版本的ie瀏覽器不支持media query,你需要使用JavaScript的hack計較解決問題。下面是一些解決方案:

  

  示例站點

  你可以使用支持media query的瀏覽器訪問下面的站點,例如:Firefox, Chrome, 和 Safari。可以查看他們針對瀏覽器寬度所做的布局響應。

  Hicksdesign

  • 大尺寸: 3 列sidebar
  • 小尺寸: 2 列sidebar (中間的sidebar跑到了左邊)
  • 更小尺寸: 1 列sidebar (最右邊的跑到了logo下面)
  • 最小尺寸: 沒有sidebar (logo 和 右側的sidebar 上移,其他sidebar 下移)

 

  Colly

  頁面布局根據瀏覽器的可視區域,在1列、2列和4列之間切換。

  A List Apart

大尺寸:導航在上不部, 1行圖片

中等尺寸:導航在左邊, 3列圖片

小尺寸:導航在上部,logo沒有背景圖片, 3列圖片

  Tee Gallery

  他和之前的Colly有點像,不同點在於它的圖片會根據頁面布局的變化,進行縮放。這里使用的技巧就是,對圖片使用百分比寬度,代替固定寬度,例如:width=100%。

  總結

  我們需要注意到,針對mobile做了一個css,並不意味着我們的站點對mobile設備就是優化的。對mobile設備進行優化,網站圖片和html代碼同樣需要縮小尺寸,這樣才有益於加載。media query做到的只是設計展現,而不是優化操作。

 

  原文地址:http://webdesignerwall.com/tutorials/css3-media-queries

 

HTML5實踐系列


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM