首先我們要明白,為什麼要用rem單位呢,常用的px不好嗎?原因是如果我們用px作為長度大小單位的話,就無法根據螢幕大小變化實時改變頁面元素的大小,反之,rem就可以做到實時適配。
其次,我們也要清楚以rem為單位的元素大小是根據css html根標籤下的文字大小(fontsize)來改變的。
在實際開發中,我們常見的設計稿尺寸有以下幾個:
第一步、我們先用**查詢做出判斷,當螢幕大小為多少尺寸的時候,作出不同的適配
第二步、我們需要把設計稿上的寬度平均劃分成15等份(份額不一定是15,也可以是20份,也可以是10份),每乙份的數值就是html根標籤的字型大小(fontsize),假設設計稿寬度是750px的話,平分成15等份,則html跟標籤的字型大小為(750/15)px。
第三步、當我們得到html根標籤中的字型大小(fontsize)之後,我們就可以用設計稿中元素的大小除以html字型大小,得到的值加上rem單位就根據螢幕大小變化做出適配了。
在沒有flexible的時候,我們需要寫很多的**查詢來適配各種螢幕的寬度,但我們有了flexible.js之後,就不需要寫**查詢了,並且flexible內部會自動獲取到螢幕的寬度,並平均分成10等份。
總結:我們使用flexible匹配不同螢幕大小的,再用px run rem外掛程式自動將px單位轉化成rem單位,我們唯一需要做的就是將設計稿寬度除以10,並把這個值設定為px run rem的root fontsize就可以了。
rem適配方案
em大小是基於父元素的字型大小 rem是相對單位,r是root的意思,在html頁面上就是html標籤,所以rem的大小是基於html元素的字型大小 使用flex的伸縮布局 使用百分比的流式布局 使用 查詢的響應式布局,共同點就是元素只能做寬度的適配 除外 rem適配可以實現寬度和高度都能做到適配,...
前端 rem適配方案
原理rem是相對長度單位,rem方案中的樣式設計為相對於根元素font size計算值的倍數。根據螢幕寬度設定html標籤的font size,在布局時使用rem單位布局,達到自適應的目的,是彈性布局的一種實現方式。實現過程 首先獲取文件根元素和裝置dpr,設定rem,在html文件載入和解析完成後...
rem手機端適配方案
1.頁面加入如下 function doc,win else if doc.addeventlistener return win.addeventlistener resizeevt,recalc,false doc.addeventlistener domcontentloaded recalc...