移動端的那些事

來源:互聯網
上載者:User

標籤:

常見方式:

  固定寬度(320)做法:這樣前端倒是爽了,可是大頁面兩邊有留白,小頁面表徵圖文字又會縮的很小,使用者體驗極其不好。

  流式布局:其實就是用%,這樣寬度倒還差不多,高度怎麼搞?所以這種布局一般都是高度寫死,顯的很不協調,另外對設計也有很大的限制,另外還有相容性方面的問題。

  響應式布局:說白了就是利用CSS3中的Media Query(媒介查詢),喊的很火,誰用誰知道,簡直累死人不要命。

  設定viewport進行縮放:以320寬度為基準,進行縮放,最大縮放為320*1.3 = 416,基本縮放到416都就可以相容iphone6 plus的螢幕了。

  <meta name="viewport" content="width=320,maximum-scale=1.3,user-scalable=no">

 

幾個術語:

  PPI:單位英寸像素數,現實世界的一英寸內像素數,決定了螢幕的顯示品質

  DPR:裝置像素比率,物理像素與邏輯像素(px)的對應關係

  Resolution:螢幕地區的寬高所佔的像素數

 

REM等比例適配所有螢幕:通過一段js根據瀏覽器當前的解析度改變根節點font-size的值

解析度Resolution適配:

  不同螢幕寬度,html元素寬高比和字型大小,元素之間的距離自適應,使用rem單位。

單位英寸像素數PPI適配:

  使用rem單位,文字會發虛。段落文字,使用px單位,用media query或js來適配。標題文字可以直接使用rem單位。

裝置像素比例DPR適配:

  根據devicePixelRatio來修改meta標籤的scale

 

詳情參見:春華秋實

 

扯了那麼多,其實我實際項目中是怎麼做的呢?一句代碼解決所有需求:

@media (max-width: 320px){    html{ font-size: 3.125%; }}@for $i from 320 through 640 {    @media (width:#{$i}px){html{font-size: $i/102.4 * 1%}}}@media (min-width: 640px){    html{ font-size: 6.25%; }}

說明:在640px的設計稿上,只需把測量到的所有px換成rem,例如測到的10px寫到項目中就是10rem,其它尺寸設計稿修改一下即可。

 

移動端的那些事

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.