日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
利用媒體查詢進行響應式設計

如今屏幕分辨率的范圍已經(jīng)從320px(iPhone)涵蓋到2560px(大顯示器)或者更高了。用戶不單單在桌面電腦上瀏覽網(wǎng)站。用戶如今會使 用移動電話,小的筆記本,平板設備(比如iPad或者Playbook)來訪問互聯(lián)網(wǎng)。所以傳統(tǒng)的固定寬度設計不再適用了。web設計需要有自適應能力。 頁面布局要可以自動的去適應所有的分辨率和設備。這個教程將會告訴你如何利用HTML5和CSS3媒體查詢來創(chuàng)建一個跨瀏覽器的響應式設計。

為平邑等地區(qū)用戶提供了全套網(wǎng)頁設計制作服務,及平邑網(wǎng)站建設行業(yè)解決方案。主營業(yè)務為成都做網(wǎng)站、成都網(wǎng)站設計、平邑網(wǎng)站設計,以傳統(tǒng)方式定制建設網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

首先看個實例

在你開始之前,看下最終demo是什么樣子。改變你瀏覽器的大小,然后看看頁面布局在基于viewport(瀏覽器可視區(qū)域)寬度的情況下是如何自動的進行浮動的。

更多例子

如果你想看更多的例子,看一下下面我用媒體查詢設計的WordPress模板:Tisa,Elemin,Suco,iTheme2,F(xiàn)unki,Minblr和Wumblr。

概覽

對于任何寬度大于1024px的分辨率,頁面容器的寬度會為980px。媒體查詢被用來檢查如果viewport窄于980px,那么頁面布局會變 成流動寬度而不是固定寬度。如果viewport窄于650px,那么頁面布局將會把內(nèi)容容器和側(cè)邊欄展開為整體寬度,從而形成一個單欄的布局。

HTML代碼

我不會去講HTML代碼的細節(jié)。下面是頁面布局的整體結(jié)構。我擁有一個pagewrap容器,它把header,content,sidebar,footer包裹在了一起。

 
 
 
 
  1.  
  2.      
  3.         
     
  4.             Demo 
  5.             Site Description 
  6.          
  7.         
  8.              
  9.                 
  10. Home
  11.  
  12.              
  13.          
  14.          
  15.              
  16.          
  17.      
  18.  
  19.      
  20.          
  21.             blog post 
  22.          
  23.     
 
  •  
  •      
  •          
  •              widget 
  •          
  •      
  •  
  •      
  •         footer 
  •      
  •  

    HTML5.js

    注意一下我在demo中使用了HTML5標簽。低于9的IE瀏覽器不支持HTML5中引入的新元素,比如

    ,
    ,
    ,
    等等。在HTML文檔中包含html5.js這個Javscript文件可以使IE識別這些新元素。

     
     
     
     
    1.  

    CSS

    重置HTML5元素為塊元素

    下面的CSS將會把HTML元素(article,aside,figure,header,footer等等)重置為塊元素。

     
     
     
     
    1. article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {  
    2.     display: block; 

    主結(jié)構CSS

    這次我還是不會去講細節(jié)。主容器pagewrap是980px寬。Header擁有一個固定的160px高度。容器content是600px寬并且向左浮動。sidebar是280px寬并向右浮動。

     
     
     
     
    1. #pagewrap { 
    2.     width: 980px; 
    3.     margin: 0 auto; 
    4.  
    5. #header { 
    6.     height: 160px; 
    7.  
    8. #content { 
    9.     width: 600px; 
    10.     float: left; 
    11.  
    12. #sidebar { 
    13.     width: 280px; 
    14.     float: right; 
    15.  
    16. #footer { 
    17.     clear: both; 

    #p#

    ***步的Demo

    這里是這個設計demo。注意媒體查詢還沒有實現(xiàn)。改變?yōu)g覽器窗口的尺寸,你應該看到頁面布局并不具有擴展能力。

    有關CSS3媒體查詢

    現(xiàn)在是有趣的部分--媒體查詢

    包含媒體查詢的JavaScript文件

    Internet Explorer8或者更老的版本不支持CSS3媒體查詢。你可以通過添加css3-mediaqueries.js這個Javascript文件來使其支持媒體查詢。

     
     
     
     
    1.  

    包含媒體查詢的CSS文件

    為媒體查詢創(chuàng)建一個新的樣式表??聪挛抑暗慕坛虂砀闱宄襟w查詢是如何工作的。

     
     
     
     
    1.  

    Viewport小于980px(流動布局)

    對于窄于980px的viewport,如下的規(guī)則將會被應用:

    • pagewrap = 重置width為95%
    • content = 重置width為60%
    • sidebar = 重置width為30%

    提示: 使用百分比(%)的值來使容器變得流動。

     
     
     
     
    1. @media screen and (max-width: 980px) { 
    2.     #pagewrap { 
    3.         width: 95%; 
    4.     } 
    5.  
    6.     #content { 
    7.         width: 60%; 
    8.         padding: 3% 4%; 
    9.     } 
    10.  
    11.     #sidebar { 
    12.         width: 30%; 
    13.     } 
    14.     #sidebar .widget { 
    15.         padding: 8% 7%; 
    16.         margin-bottom: 10px; 
    17.     } 

    Viewport小于650px(一欄布局)

    接下來對窄于650px的viewport我擁有另一個CSS集合:

    • header = 重置height為auto
    • searchform = 重新定位searchform為離頂部5px
    • main-nav = 重置positionstatic
    • site-logo = 重置positionstatic
    • site-description = 重置positionstatic
    • content = 重置width為auto(這會使得容器展開為整體寬度)并且不進行浮動
    • sidebar = 重置width為100%并且不進行浮動
     
     
     
     
    1. @media screen and (max-width: 650px) { 
    2.     #header { 
    3.         height: auto; 
    4.     } 
    5.  
    6.     #searchform { 
    7.         position: absolute; 
    8.         top: 5px; 
    9.         right: 0; 
    10.     } 
    11.  
    12.     #main-nav { 
    13.         position: static; 
    14.     } 
    15.  
    16.     #site-logo { 
    17.         margin: 15px 100px 5px 0; 
    18.         position: static; 
    19.     } 
    20.  
    21.     #site-description { 
    22.         margin: 0 0 15px; 
    23.         position: static; 
    24.     } 
    25.  
    26.     #content { 
    27.         width: auto; 
    28.         float: none; 
    29.         margin: 20px 0; 
    30.     } 
    31.  
    32.     #sidebar { 
    33.         width: 100%; 
    34.         float: none; 
    35.         margin: 0; 
    36.     } 
    37.  

    小于480px的Viewport

    下面的CSS將會在viewport寬度小于480px(即橫屏模式下iPhone屏幕的寬度)的時候生效。

    • html = 禁止文本大小調(diào)整(text size adjustment)。默認情況下,iPhone放大了文本大小,這樣讀起來更加舒服。你可以通過添加-webkit-text-size-adjust: none來禁止文本大小調(diào)整。
    • main-nav = 重置字體大小為90%
     
     
     
     
    1. media screen and (max-width: 480px) { 
    2.  
    3.     html { 
    4.         -webkit-text-size-adjust: none; 
    5.     } 
    6.  
    7.     #main-nav a { 
    8.         font-size: 90%; 
    9.         padding: 10px 8px; 
    10.     } 
    11.  

    彈性圖片

    為了使圖片具有彈性,只需要添加max-width:100%height:auto。給圖片加上max-width:100%height:auto在IE7中是工作的,但是在IE8中不工作(是的,另一個奇怪的IE bug)。為了解決這個問題,你需要為IE8添加width:auto\9

     
     
     
     
    1. img { 
    2.     max-width: 100%; 
    3.     height: auto; 
    4.     width: auto\9; /* ie8 */ 

    #p#

    彈性的嵌入視頻

    為了使嵌入視頻具有彈性,可以使用上面所提到的相同技巧。由于未知原因,(嵌入元素的max-width:100%在Safari中不工作。解決方式是使用width:100%做為替代。

     
     
     
     
    1. .video embed, 
    2. .video object, 
    3. .video iframe { 
    4.     width: 100%; 
    5.     height: auto; 

    進行初始縮放的Meta標簽(iPhone)

    默認情況下,iPhone中的Safari會收縮HTML頁面來適應iPhone屏幕。下面的meta標簽告訴iPhone中的Safari使用設備的寬度做為viewport的寬度,并且禁用初始縮放比例。

     
     
     
     
    1.  

    最終Demo

    查看最終demo并且調(diào)整你瀏覽器窗口的大小來看看真實工作的媒體查詢。不要忘記用iPhone,iPad,Blackberry(新版本)和Android電話來訪問demo,以便看看移動版本的樣子。

    總結(jié)

    • 媒體查詢的Javascript備胎:

    css3-mediaqueries.js是使那些不支持媒體查詢的瀏覽器可以使用媒體查詢所必需的。

     
     
     
     
    1.  
    • CSS媒體查詢:

    創(chuàng)建自適應設計的手段是根據(jù)viewport的寬度來用CSS重寫頁面布局結(jié)構。

     
     
     
     
    1. @media screen and (max-width: 560px) { 
    2.  
    3.     #content { 
    4.         width: auto; 
    5.         float: none; 
    6.     } 
    7.  
    8.     #sidebar { 
    9.         width: 100%; 
    10.         float: none; 
    11.     } 
    12.  
    13. }
    • 具有彈性的圖片:

    使用max-width:100%height:auto來使圖片變得具有彈性。

     
     
     
     
    1. img { 
    2.     max-width: 100%; 
    3.     height: auto; 
    4.     width: auto\9; /* ie8 */ 
    • 具有彈性的嵌入視頻:

    使用width:100%height:auto使嵌入視頻具有彈性。

     
     
     
     
    1. .video embed, 
    2. .video object, 
    3. .video iframe { 
    4.     width: 100%; 
    5.     height: auto; 
    • Webkit字體大小調(diào)整(Text Size Adjust):

    在iPhone上使用-webkit-text-size-adjust:none來禁用文本大小調(diào)整。

     
     
     
     
    1. html { 
    2.     -webkit-text-size-adjust: none; 
    • 重置iPhone的Viewport和初始縮放比例:

    下面的meta標簽在iPhone上重置viewport和初始縮放比例:

     
     
     
     
    1.  

    當前文章:利用媒體查詢進行響應式設計
    瀏覽路徑:http://m.5511xx.com/article/dhspdoe.html