user-scalable=no导致部分手机缩放失效

最近与一客户合作,我们的产品以h5的形式集成到别人的App里。客户发给我们测试版的android app,我们给他们链接,然后在他们app里的webview调试

问题来了,我们适配屏幕的方案是采用viewport缩放,算出缩放比,设置scale来做到适配所有机型,这套适配方案在我们的app里也经过了检验,基本没出什么问题,但是客户反馈,720p的手机上,并未缩放。我们测试之后发现,确实如此

于是分析原因,为什么没有缩放,打印出缩放比,确实是没错的。打印出viewport的属性值,也是没错的。在js里重新设置viewport值,仍然是OK的,那为什么缩放并未生效呢?

后来想到会不会是user-scalable=no导致,于是把这个值去掉,结果无效,仍然是一样的。于是设置user-scalable=yes,终于成功

问题虽然解决了,但是却并不知道原因,这个属性应该是控制用户缩放的,但是却导致设置的缩放失效?而且这个缩放问题虽然解决了,但是引起了另一个问题,就是4.3以下的手机,返回webview会变白,必须手触摸一下才会正常,估计也是这个原因引起的。

这个问题先记下,后续开发中看能不能找到原因,同时也决定采用手淘的lib-flexible方案了

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lindir

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值