移動端rem佈局樣式錯亂問題
這段時間在開發app內的h5頁面,發現一個奇怪的問題,測試機中有紅米手機 ,oppo手機,在app打開h5之後,整個頁面被壓扁變形了,一開始以爲是手機分辨率的問題,但是在同樣的手機的其它app內和瀏覽器內打開頁面,都是完全正常顯示。
後來查了一下,發現原來是手機字體大小設置的問題,當把字體調大一號時,在app內就正常顯示了。現在很多安卓手機的系統都是可以自己去設置系統字體的大小,這就導致用rem佈局時,根字體的大小計算錯誤,樣式出現錯亂。ios上不會出現這個問題。
解決辦法:
Android手機可以給webview配置webview.getSettings().setTextZoom(100)禁止縮放,按照百分百顯示。
注意:rem佈局在安卓手機中還有一個問題需要特別注意,很多按鈕樣式我們希望文字可以垂直居中,一般都是用line-height或者padding去處理,但是我們會發現在很多安卓手機裏無法垂直居中,這裏其實是我們設置的rem單位爲奇數造成的。我們在設置font-size,line-height,padding等屬性的值時,儘量都是偶數,這樣就不會出現這個問題了!