響應式布局的五種實現方法


響應式布局可以讓網站同時適配不同分辨率和不同的手機端,讓客戶有更好的體驗。

方案一:百分比布局

利用對屬性設置百分比來適配不同屏幕,注意這里的百分比是相對於父元素; 能夠設置的屬性有 width、height、padding、margin,其他屬性比如 border、font-size 不能用百分比設置的,先看一個簡單例子:
在這里插入圖片描述
在這里插入圖片描述
頂部是利用設置圖片 width: 50%來適應不同的分辨率,由於原始圖片高度不同,所以第一張圖片頂部會有空白,這種情況最好兩張圖片寬高保持一致,如果使用強制高度統一,會導致圖片變形;
注意:當屏幕大於圖片的寬度時,會進行拉伸;解決拉伸方法就是改為
max-width: 50%,但當屏幕大於圖片的寬度時,兩邊會有空白。欄目是利用設置單欄目 width: 25%來適應不同的分辨率。
由於沒辦法對 font-size 進行百分比設置,所以用的最多就是對圖片和大塊布局進行百分比設置。

方案二:使用媒體查詢 (CSS3 @media 查詢)

利用媒體查詢設置不同分辨率下的css 樣式,來適配不同屏幕,先看一個簡單例子:
在這里插入圖片描述
三個不同分辨率下顯示對應的背景色。
媒體查詢相對於百分比布局,可以對布局進行更細致的調整,但需要在每個分辨率下面都寫一套 css 樣式;分辨率拆分可視項目具體情況而定。

注意:IE678 不支持媒體查詢。

方案三.rem 響應式布局

當前頁面中元素的rem 單位的樣式值都是針對於html 元素的font-size 的值進行動態計算的,所以有兩種方法可以達到適配不同屏幕:
第一種利用媒體查詢,在不同分辨率下給 html 的 font-size 賦值。第二種利用 js 動態計算賦值,詳細代碼如下圖:

在這里插入圖片描述

缺點就是打開頁面時候,元素大小會有一個變化過程。

方案四.vw 響應式布局

根據 PSD 文件寬度或高度作為標准,元素單位 px 轉換為 vw 或 vh,比如font-size: 12px,PSD 文件寬度 375,轉換公式 12 * 100 / 375,則樣式改為font-size: 3.2vw,下面是我經常使用的工具,有利於提高轉換效率。

在這里插入圖片描述
現階段手機端用的最多就是這個方法,能保持不同屏幕下元素顯示效果一致, 也不用寫多套樣式。

方案五.flex 彈性盒子布局

利用 flex 屬性來適配不同屏幕,下圖利用簡單的屬性實現欄目響應式
在這里插入圖片描述


免責聲明!

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



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