zoukankan      html  css  js  c++  java
  • 移动端开发的兼容问题(自我总结篇)

    移动端开发的兼容问题

    文章已同步我的github笔记https://github.com/ymblog/blog,欢迎大家加star~~

    1、ios下input为type=button属性disabled设置true,会出现样式文字和背景异常问题。

    解决方案:使用opacity=1来解决

    2、对非可点击元素如(label,span)监听click事件,部分ios版本下不会触发。

    解决方案:css增加cursor:pointer就搞定了

    3、移动端1px边框

    解决方案:比如按钮的box的class为btn

    .btn:before{
      content:'';
      position: absolute;
      top: 0;
      left: 0;
      border: 1px solid #ccc;
       200%;
      height: 200%;
      box-sizing:border-box;
      -webkit-box-sizing:border-box;
      -webkit-transform: scale(0.5);
      transform: scale(0.5);
      -webkit-transform-origin: left top;
      transform-origin: left top;
    }

    4、input为fixed定位,在ios下input固定定位在顶部或者底部,在页面滚动一些距离后,点击input(弹出键盘),input位置会出现在中间位置。

    解决方案:内容列表框也是fixed定位,这样不会出现fixed错位的问题

    5、移动端字体小于12px使用四周边框或者背景色块,部分安卓文字偏上bug问题。

    解决方案:可以使用整体放大1倍(width、height、font-size等等)再使用transform缩放,使用canvas在移动端会模糊也需要这样的解决方案

    6、在移动端图片上传图片兼容低端机的问题。

    解决方案:input 加入属性 accept="image/*" multiple

    7、在h5嵌入app中,ios如果出现垂直滚动条时,手指滑动页面滚动之后,滚动很快停下来,好像踩着刹车在开车,有“滚动很吃力”的感觉。

    解决方案:

    self.webView.scrollView.decelerationRate = UIScrollViewDecelerationRateNormal;对webview设置了更低的“减速率”

    8、移动端click 300ms 延时响应

    解决方案:使用 Fastclick

    window.addEventListener( "load", function() {
      FastClick.attach( document.body );
    }, false );

    9、在安卓机上placeholder文字设置行高会偏上

    解决方案:input有placeholder情况下不要设置行高

    10、overflow:scroll,或者auto在iOS上滑动卡顿的问题

    解决方案:加入-webkit-overflow-scrolling:touch;

    11、移动端图片压缩预览上传的问题,可以参考我的一篇文章https://segmentfault.com/a/11...

    12、移动端适配可以使用lib-flexible https://github.com/amfe/lib-f...,使用rem来布局移动端有一个问题就是px的小数点的问题,不同的手机对于小数点处理方式不一样,有些是四舍五入,有些直接舍去掉,因此在自动生成雪碧图时候图标四周适当留2px的空间,防止图标被裁剪掉

    13、iphonex的适配的解决方案

    <meta name="viewport" content="...,viewport-fit=cover" />
    body{
        padding-top: constant(safe-area-inset-top);
        padding-top: env(safe-area-inset-top);
        padding-bottom: constant(safe-area-inset-bottom);
        padding-bottom: env(safe-area-inset-bottom);
    }

    结束……撒花~~

    文章已同步我的github笔记https://github.com/ymblog/blog,欢迎大家加star~~

    之后有问题会陆续更新上去,大家有更多的兼容问题或者以上有问题可以在评论中留言。

  • 相关阅读:
    ORA01940: cannot drop a user that is currently connected
    struts+swfupload实现批量图片上传(下篇)
    iPhone开发入门教程
    从零开始学习OpenGL ES集合
    iPhone入门学习——半翻页动画效果例子
    《Android学习指南》目录
    基于OpenGL ES 的图片翻转例子,包含双面贴图3D变换
    Android核心分析
    ios开发之分享一个特效 Cube
    仿Drinkspiration App的menu
  • 原文地址:https://www.cnblogs.com/10manongit/p/12223000.html
Copyright © 2011-2022 走看看