前端 - 安卓retina屏幕css里邊的device-width 判斷有問題
問題描述
pre conditionmx4 默認瀏覽器 meta: width=device-widthwindow.innerWidth = 384 , window.devicePixelRatio = 3, screen.width = 1152 問題css// ipad的media query 被適配到了mx4上@media only screen and (min-device-width : 768px) and (orientation : portrait) { }
iphone下正常 ,同樣地問題在華為貓客也有。
猜測的原因: css 里邊 device-width的判斷按照屏幕分辨率(1152)來計算,不是按照瀏覽器設置device-width(381)來計算
求大神支招解答!!!!!!
問題解答
回答1:將ipad的判斷條件補齊:@media only screen and ( min-device-width : 768px ) and ( max-device-width : 1024px ) and ( orientation : landscape ){ /Styles/}
你可以使用@media screen and (device-width:1152px){ /Styles/ }來檢測mx4上使用到的device-width是否等于screen.width。but,據我目前的知識,樓主的情況不應該啊,手邊沒有mx4,測不到。當然還有可能的情況是@media only screen and ( min-device-width : 768px ) 在mx4上的解讀出錯直接忽略,這樣也會落在這個區域里。
回答2:你可能沒有設置viewport吧:
<head> ... <meta name='viewport' content='width=device-width, target-densityDpi=medium-dpi, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no'> ...</head>
其中target-densityDpi=medium-dpi比較重要,關于dpi的概念如果不了解的話,建議你去查一下。
相關文章:
1. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?2. javascript - Web微信聊天輸入框解決方案3. 請教各位大佬,瀏覽器點 提交實例為什么沒有反應4. javascript - log4js的使用問題5. docker - 如何修改運行中容器的配置6. javascript - 移動端textarea不能上下滑動,該怎么解決?7. javascript - history.replaceState()無法改變query參數8. javascript - 為什么form表單提交沒有跨域問題,但ajax提交有跨域問題?9. javascript - Ajax加載Json時,移動端頁面向左上角縮小一截兒,加載完成后才正常顯示,這該如何解決?10. javascript - 為什么這個點擊事件需要點擊兩次才有效果
