Web解决移动端1px像素问题
在移动端,如果仅仅使用 css 的 1px 来设置 border ,那可能会出现比较粗的情况。因为,有些手机屏幕的 DPR = 2
(2倍图),即 1px 它会用两个物理像素来显示,就粗了。
1.Css解决
-
优点:简单
-
缺点:不兼容安卓设备、IOS7以下设备
.border { border: 1px solid #999 }
@media screen and (-webkit-min-device-pixel-ratio: 2) {
.border { border: 0.5px solid #999 }
}
@media screen and (-webkit-min-device-pixel-ratio: 3) {
.border { border: 0.333333px solid #999 }
}
2.设置html中的meta标签
-
优点:几乎满足所有场景并兼容布局
-
缺点:不适用于年代太久远的项目
<meta name="viewport" content="width=device-width,initial-scale=0.5, maximum-scale=0.5, minimum-scale=0.5, user-scalable=no">
<meta name="viewport" content="width=device-width,initial-scale=0.3333333333333333, maximum-scale=0.3333333333333333, minimum-scale=0.3333333333333333, user-scalable=no">