<em id="09ttv"></em>
    <sup id="09ttv"><pre id="09ttv"></pre></sup>
    <dd id="09ttv"></dd>

        • 想學(xué)習(xí)超流行的響應(yīng)式設(shè)計(jì)?來看看這篇教程

          2014-10-23    藍(lán)藍(lán)設(shè)計(jì)的小編

          banner帖內(nèi).jpg


          網(wǎng)上關(guān)于響應(yīng)式設(shè)計(jì)的教程好復(fù)雜,我寫一個(gè)簡(jiǎn)版的。

          簡(jiǎn)單說呢就針對(duì)不同的屏幕分辨率應(yīng)用不同的CSS樣式。比如在電腦、Pad設(shè)備上,屏幕比較寬,就可以一行放2個(gè)Div。到了手機(jī)上,或者Pad豎著拿的的時(shí)候,一行就只放1個(gè)Div。


          這里有2個(gè)關(guān)鍵點(diǎn):

          • 一是如何在不修改Dom結(jié)構(gòu)的前提下調(diào)整布局。
          • 二是如何判斷屏幕分辨率并應(yīng)用對(duì)應(yīng)的CSS。

          以上兩點(diǎn)都應(yīng)該不依賴與JS。

          實(shí)現(xiàn)第一點(diǎn)依靠的是流式布局。就是所有參與布局的DIV都用float:left,寬度都用百分比表示。比如下圖,黃色部分的寬度是60%,橘色寬度是40%。

          %E5%AE%BD.jpg

          如果將黃色和橘色的寬度都width=100%,那么從1行變成2行了,如下圖。從而實(shí)現(xiàn)不修改Dom實(shí)現(xiàn)布局變化。

          %E7%AA%84.jpg

          那么如何不使用JS而實(shí)現(xiàn)動(dòng)態(tài)調(diào)整CSS樣式就是第二個(gè)關(guān)鍵點(diǎn)。

          HTML5中提供了一種新的CSS語法——@media,學(xué)名是Media Query,可以為不同的分辨率設(shè)定不同的樣式。

          CSS
          1. /* Phone Portrait (320px) */
          2. @media only screen and (max-width: 320px) {
          3.     #head { width: 100%; }
          4.     #main { width: 100%; }
          5.     #foot { width: 100%; }
          6.     #left { width: 100%; }
          7.     #right { width: 100%; }
          8. }
          復(fù)制代碼
          上面這段代碼的含義就是當(dāng)屏幕寬度小于等于320像素時(shí)應(yīng)用大括號(hào)中的樣式。
          下圖是在CSS生效時(shí)在瀏覽器中的效果:

          css.jpg

          @media還有一些更復(fù)雜的用法,比如:

          CSS
          1. /* Phone Landscape (480px) */
          2. @media only screen and (min-width: 321px) and (max-width: 480px) and (orientation: landscape) {
          復(fù)制代碼
          這段語句就是針對(duì)iPhone橫屏的。即,瀏覽器寬度在321-480像素之間,且方向是“橫向”時(shí)生效。

          不過自從Retina這中妖艷的屏幕推出,分辨率已經(jīng)不能代表世界的真相了。小小的Note3的分辨率比一些17“顯示的分辨率還高。
          所以還有必要判斷一下設(shè)備的像素密度-device-pixel-ratio。

          CSS
          1. @media only screen and (-moz-min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2)
          復(fù)制代碼
          比如上面的語句就是判斷終端的像素比是2的話,所渲染的樣式。可以適用于iPhone4,iPhone5等設(shè)備。

          除了上述兩點(diǎn),還需要在頁面上增加一個(gè)viewport的meta標(biāo)簽,否則在手機(jī)上可能會(huì)有頁面自動(dòng)縮放的情況。例如:

          HTML
          1. <meta name="viewport" content="width=device-width; initial-scale=1.0">
          復(fù)制代碼

          總結(jié)一下:響應(yīng)式布局有三個(gè)關(guān)鍵點(diǎn):

          • 流式布局 Liquid Layout
          • Media Query
          • viewport

          具體細(xì)節(jié)就請(qǐng)大家自己研究相關(guān)的語法了。

          Media Query的語法比較復(fù)雜,這里個(gè)大家推薦一個(gè)工具,可以方便的設(shè)計(jì)布局,并可以針對(duì)各種設(shè)備自動(dòng)生成Media Query的語句:

          http://www.responsivewebcss.com/


          step1.png


          step2.png


          step3.png


          日歷

          鏈接

          個(gè)人資料

          存檔

          久久久久亚洲av成人网人人软件| 国产福利电影一区二区三区久久老子无码午夜伦不 | 久久久久国产| 久久综合给合久久狠狠狠97色69 | 久久国产精品成人片免费| 久久精品国产日本波多野结衣 | 中文字幕成人精品久久不卡| 66精品综合久久久久久久| 人妻精品久久久久中文字幕| 无码伊人66久久大杳蕉网站谷歌 | 精品久久久久久久中文字幕| 午夜精品久久久久成人| 久久水蜜桃亚洲av无码精品麻豆| 久久亚洲欧洲国产综合| 久久久久免费精品国产| 久久免费香蕉视频| 91精品国产综合久久香蕉 | 久久精品国产半推半就| 午夜精品久久久久久影视777| 久久超碰97人人做人人爱| 一本大道久久东京热无码AV| 国内精品久久久久影院一蜜桃| 久久精品亚洲精品国产欧美| 久久久久久久波多野结衣高潮| 久久本道久久综合伊人| 欧美一区二区三区久久综| 欧美无乱码久久久免费午夜一区二区三区中文字幕| 2021国产精品久久精品| 久久国产综合精品五月天| 2021精品国产综合久久| 99久久精品影院老鸭窝| 欧美亚洲色综久久精品国产| 亚洲va久久久噜噜噜久久男同| 超级碰碰碰碰97久久久久| 久久99精品国产麻豆蜜芽| 久久精品国产只有精品66| 久久国产色AV免费看| 久久香蕉国产线看观看99| 91久久精品91久久性色| 国产精品丝袜久久久久久不卡| 欧美一区二区精品久久|