根據網上找到的解決辦法,對於安卓設備,把dpr=1改為當前設備的dpr 這時候會不會發現有些安卓機可以正常顯示,有些安卓機顯示樣式反而特別小呢?其實有一點一定要註意,在代碼中,我們可能針對不同dpr的設備設定了不同的樣式,比如圖片、寬高、字體大小等,這時候就要考慮到安卓可能的dpr了,否則這些針對性 ...
根據網上找到的解決辦法,對於安卓設備,把dpr=1改為當前設備的dpr
if (!dpr && !scale) { if (isIPhone) { // iOS下,對於2和3的屏,用2倍的方案,其餘的用1倍方案 if (devicePixelRatio >= 3 && (!dpr || dpr >= 3)) { dpr = 3; } else if (devicePixelRatio >= 2 && (!dpr || dpr >= 2)){ dpr = 2; } else { dpr = 1; } } else { // 其他設備下,仍舊使用1倍的方案 // dpr = 1; // 其他設備下,改為使用設備當前的dpr dpr = devicePixelRatio; } scale = 1 / dpr; }
這時候會不會發現有些安卓機可以正常顯示,有些安卓機顯示樣式反而特別小呢?其實有一點一定要註意,在代碼中,我們可能針對不同dpr的設備設定了不同的樣式,比如圖片、寬高、字體大小等,這時候就要考慮到安卓可能的dpr了,否則這些針對性的樣式必然會按預設的dpr=1的樣式來展示的。比如下麵是我預設寫的font-size
目前只是測了一部分安卓機,沒有出現問題,dpr=2.75 是 小米 mix,dpr=4 是三星s6 edge ,我看網上安卓應該還有dpr=1.5的情況,目前我還沒遇到。所以一定要寫多種方案,否則,安卓的樣式真的就跪 了…………………………
這裡有一片文章寫的比較好,可以推薦閱讀:http://blog.csdn.net/a0405221/article/details/78913714
https://www.cnblogs.com/ling-du/p/4623623.html
http://mdsa.51cto.com/art/201507/484215_2.htm
在測試過程中還發現一個問題,vivo打不開我們的手機端網站………………換任何一個瀏覽器都不行……