前端入坑指南——chrome模擬器和真機樣式不一致

移動端為了兼容各種機型的適配問題,一般會采用相對單位rem(font?size?of?the?root?element)來給定DOM的width、height、padding、margin、font-size、border等。確實解決了很多移動端適配的問題,但是,在一些特殊情況下會遇到chrome模擬器和真機不一致的情況。

舉個栗子:圖1chrome模擬器:iPhone6p , 圖2 真機iPhone6p:


圖1



圖2

在模擬器下調的好好的,為什么有些機型就是被擠下去了呢。

? ? ? 這會不會是rem相對單位的問題呢,產生這種懷疑,對照chrome調試器發(fā)現(xiàn)出現(xiàn)問題的地方的寬度是414px,和模擬器的邏輯分辨率是一樣的。圖3最外層div寬度414? ≈? 圖4(20.7+393.312=414.012)四舍五入,所以每排的第三個div沒有被擠下去。

圖3
圖4

但是在真機下,就不會四舍五入了,算一排dom的總寬:

0.5rem*41.4px + (0.18519rem +2.91667rem +0.00926rem

*2) *3*41.4px+2px*3 = 414.25119599999994px,當多了0.2312個像素單位會多占用一個設備像素所以真機下最后一個div被擠下去了。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容