css - 移動端rem適配問題
問題描述
如果在移動項目中使用像weui這種樣式庫怎么結合rem布局?比如想用淘寶的flexible方案布局,會改變dpr
[data-dpr='2'] p { font-size: 24px;}[data-dpr='3'] p { font-size: 36px;}
weui里面字體就會出現異常,請問怎么解決這種問題?或者說在用第三方樣式庫/組件庫的時候不用把px改成rem?
問題解答
回答1:這個是lib.flexible的文檔說明,你可以去看看。
回答2:如果你不想改變dpr,完全可以在meta標簽里面指定dpr的值,這樣就不會出現你說的問題了
回答3:解決移動端適配字體問題:就我所知講講
一般文字尺寸考慮到字體的點陣信息,一般文字尺寸多會采用 16px 20px 24px等值,
若以rem指定文字尺寸,會產生諸如21px,19px這樣的值,會導致字形難看,毛刺,甚至黑塊,故用px單位進行設置,然后根據設備的分辨率設置不同的font-size,因移動端大部分的設備獨立像素不會相差太大,故可根據不同的dpr進行設置。
[data-dpr = '2'] p {font-size:24px;}[data-dpr='3'] p{font-size:36px;}/* 或者使用媒體查詢的方法設置 */標題類文字
可能也有要求隨屏幕縮放,且考慮到這類文字一般都比較大,超過30px的話,也可以用rem設置字體。
需注意:使用淘寶的flexible方案布局并不會自動把你的設置的單位px轉換成rem,當然用插件可以實現。
手淘方案會動態生成initial-scale,maximum-scale,minimum值,布局寬高使用rem,然后html標簽設置font-size,利用fone-size來控制rem寬高,并且用設備像素比來設置dpr來適配不同移動設備的屏幕密度顯示flexible.js源碼
相關文章:
1. javascript - npm下載的模塊不完整是什么問題?2. java - Spring事務回滾問題3. mysql 聯表查詢4. apache - 想把之前寫的單機版 windows 軟件改成網絡版,讓每個用戶可以注冊并登錄。類似 qq 的登陸,怎么架設服務器呢?5. node.js - 我想讓最后進入數據庫的數據,在前臺最先展示,如何做到?6. MySQL數據庫服務器循環插入執行速度慢7. 剛放到服務器的項目出現這中錯誤,有高手指點嗎8. wordpress - Nginx中禁止訪問txt,robots.txt文件例外,規則該怎么寫?9. python 操作mysql如何經量防止自己的程序在之后被惡意注入(說白了就是問一下python防注入的一些要點)10. mysql - 面試題:如何把login_log表轉換成last_login表?
