移动端样式之踩坑及解决方案

最近做了个Hybrid的项目,对于 H5 的布局 什么的就不多说了,这里总结下遇到的问题:

Retina 屏幕不够清晰,不同手机显示不一致.

关于什么是 Retina 屏幕,究竟会有什么影响?请移步我这篇文章:

juejin.im/post/5bfa9e…

开发还要根据设计搞进行计算像素十分不方便。

具体也可参考我这篇文章。在vue中的postcss相关

移动端 1px 问题

这里遇到一些问题就是1px的问题,在 Retina 屏幕进行适配。解决方案很多种。我这里是利用媒介查询,我觉这种方法比较简单和容易控制,所以我这里是这样解决的:

CSS
.border {
  border-bottom: 1px solid #D9D9D9;
}

@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .border {
    -webkit-transform: scaleY(0.5);
    -webkit-transform-origin:0 0;
    overflow: hidden;
  }
}
@media screen and (-webkit-min-device-pixel-ratio: 3) {
  .border {
    -webkit-transform: scaleY(0.33);
    -webkit-transform-origin:0 0;
    overflow: hidden;
  }
}
复制代码

ios用户,如果用户昵称是手机号码,就会在页面中显示蓝色字体,并且可以拨打。

<meta name = "format-detection" content = "telephone=no">
复制代码

ios 用户,点击后,伪类的 :hover 不生效。安卓ok

解决方法也有很多种。这里我是这样解决:

<body ontouchstart="">
....
</body>
复制代码

增加 ontouchstart 事件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值