1. safari浏览器字体不能自动随网页缩放调整大小

-webkit-text-size-adjust:100%

2. 点击<button><input>有灰色透明背景

-webkit-tap-highlight-color:rgba(0,0,0,0);

3.微信、QQ内置浏览器视频自动全屏

非腾讯域名的视频地址都会

4.iphoneX默认网页显示在安全区域内,不全屏

<meta name="viewport" content="viewport-fit=cover">

5.flex布局不兼容,加上前缀也不行(常见于华为或旧版iOS)

display: -webkit-box;

display: box;

display: -webkit-flex;

display: flex;

须声明box和flex两种。

6.Android设置line-height有偏移不垂直居中

原因:1. 字体不是偶数

2. 用rem单位

解决方案:

1. 字体变大

2. 增加父元素,设置diaplay: table-cell; vertical-align: middle

3. 元素放大两倍,再缩小

4. line-height: 1; 用padding-top撑起父元素。

5. 用px单位

6. 用图片去显示

7.iOS默认不可点击元素点击事件失效

当委托给一个元素添加click事件时,如果事件是委托到 document 或 body 上,并且委托的元素是默认不可点击的(如 div, span 等),此时 click 事件会失效

解决方案:

  1. 将 click 事件直接绑定到目标元素(即 .target ) 上
  2. 将目标元素换成 <a> 或者 <button> 等可点击的元素
  3. 给目标元素添加一个空的 onclick=""(<div class="target" onclick="">点击我!</div>)
  4. 把 click 改成 touchend 或 touchstart(注意加上preventDefault)
  5. 将 click 元素委托到非 document 或 body 的父级元素上
  6. 给目标元素加一条样式规则 cursor: pointer;

最后一种解决方案最简单,推荐。

8. 部分移动端浏览器不支持space-evenly

解决方案:

用space-arround代替,或通过设置宽度、margin等布局

9. 移动端(尤其是iOS)一些浏览器具有下拉回弹效果,fixed定位元素不跟着下拉

解决方案:

a. 放弃fixed定位

b. 如导航栏等要实现固定于顶部效果,无需跟着下拉,则用fixed定位

10.微信小程序中,textarea、input元素的maxlength不一定生效。

解决方案:

监听text.length,手动改变文本长度。

11.微信小程序中,输入文字时,输入法待选文字的长度会被计算在内。

解决方案:

1. 已输入文字的长度取实际长度和限制长度的最小值。

2. 传给接口的文本用splice剪切需要的长度。

12.iOS手机,微信小程序遮罩、picker组件会被穿透,页面上有多个picker组件时,可能在选择选项时触发其他picker组件弹出。

解决方案:

限制每次只能弹出一个picker,某个picker弹出时,其他picker都是disabled状态,点击无反应。

13.微信小程序,<scroll-view>元素如果用动态生成,则不会触发原生的trigger方法。

14.微信小程序,textarea多行输入框组件,键盘弹出会遮挡输入框。

解决方案:

设置cursor属性,指定光标与键盘的距离。

15.overflow:hidden在手机上失效

在移动端,给body,html设置overflow:hidden后,仍然有滚动条。

浏览器解析<meta name="viewport"> 标签会忽略body,html的overflow属性。

解决方案:

html,body{
 overflow:hidden;
}

body下加一个wrap,

.wrap{
 overflow:hidden;
 position:relative;  /* 重点 */
}

html,body就没有滚动条了。

(持续更新中……)

移动端、微信小程序兼容性问题汇总(持续更新……的更多相关文章

  1. 微信小程序开源项目库汇总

    最近做了一个微信小程序开源项目库汇总,里面集合了OpenDigg 上的优质的微信小程序开源项目库,方便移动开发人员便捷的找到自己需要的项目工具等,感兴趣的可以到GitHub上给个star. UI组件 ...

  2. 微信小程序常用样式汇总

    本文系转载: 原文作者:chenzheng8975 原文地址:https://www.cnblogs.com/chenzheng8975/p/9605186.html 微信小程序常用样式汇总 小程序特 ...

  3. 微信小程序开发问题汇总

    前言 经过将近一个多月的开发,我们团队开发的微信小程序 "出发吧一起" 终于开发完成,现在的线上版本为 2.2.4-beta 版 本文档主要介绍该小程序在开发中所用到的技术,已经在 ...

  4. java服务端微信小程序支付

    发布时间:2018-10-05   技术:springboot+maven   概述 java微信小程序demo支付只需配置支付一下参数即可运行 详细 代码下载:http://www.demodash ...

  5. 转载:移动端+微信小程序实现,手机端滑动分页代码思路(ajax)

    //一般在PC上我们要分页都是通过上一页和下一页来实现的,手机通过当下滑到一定程度的时候自动加载下一页面//实现思路:首先加载部分数据,当下滑到某个元素可见的时候,如果还有数据,则新发送请求,然后追加 ...

  6. 微信小程序——报错汇总

    tabBar.list[2].selectedIconPath 文件不存在 很明显是文件名错了,定义的my-acive,少写了个t,眼睛出问题了~ module "static/vant/c ...

  7. 微信小程序开发资料汇总

    >> 微信小程序开发工具下载 社区推荐: >>蜂鸟-微信小程序开发者社区>> 很快-微信小程序开发者社区 博文推荐: >> 微信小程序开源Demo精选& ...

  8. 微信小程序开发参考资料汇总

    不错的微信小程序入门教程:微信小程序入门二: 条件.遍历.网络请求.获取本地图片http://blog.csdn.net/lecepin/article/details/54016701 微信小程序入 ...

  9. 微信小程序常见问题集合(长期更新)

    最新更新: 新手跳坑系列:推荐阅读:<二十四>request:fail错误(含https解决方案)(真机预览问题 跳坑指南<七十>如何让微信小程序服务类目审核通过 跳坑六十九: ...

  10. 微信小程序setData复杂数组的更新、删除、添加、拼接

    众所周知,微信小程序里所有对数据的修改只有在setData里修改才会在页面上渲染.在此分享小程序里复杂数组的更新.删除.添加.拼接 初始数据 数组嵌套对象 data: { cartList = [{ ...

随机推荐

  1. verilog之锁存器和触发器

    verilog锁存器和触发器 1.基本概念 锁存,就是输入信号变化时,输出不发生变化时,就是触发器或者锁存器.触发器的敏感信号是clk,即触发器是知道被延时了多少.对于锁存器来说,延时是不确定的.一般 ...

  2. 【Pavia】遥感图像数据集下载地址和读取数据集代码

    [Pavia]遥感图像数据集下载地址和读取数据集代码 目录 [Pavia]遥感图像数据集下载地址和读取数据集代码 前言 Pavia数据集 Pavia数据集地址: Pavia数据集预览 PaviaU.m ...

  3. DETR:Facebook提出基于Transformer的目标检测新范式,性能媲美Faster RCNN | ECCV 2020 Oral

    DETR基于标准的Transorfmer结构,性能能够媲美Faster RCNN,而论文整体思想十分简洁,希望能像Faster RCNN为后续的很多研究提供了大致的思路   来源:晓飞的算法工程笔记 ...

  4. 【Java面试题】SpringMVC

    九.SpringMVC 63)SpringMVC 的流程 a.用户向服务器发送请求,请求被 SpringMVC 前端控制器 DispatchServlet 捕获: b.DispatcherServle ...

  5. Android按钮_单选框_多选框_文字框

    1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android= ...

  6. MySQL插入更新删除数据

    数据插入 插入完整的行 INSERT INTO customers VALUES(NULL, 'Pep E. LaPew', '100 Main Street', 'Los Angeles', 'CA ...

  7. C 语言函数:入门指南

    C 语言中的函数声明和定义 您可以通过以下方式创建并调用函数: // 创建一个函数 void myFunction() { printf("我刚被执行了!"); } int mai ...

  8. MySQL 数据库操作指南:LIMIT,OFFSET 和 JOIN 的使用

    限制结果 您可以通过使用"LIMIT"语句来限制查询返回的记录数量.以下是一个示例,获取您自己的Python服务器中"customers"表中的前5条记录: i ...

  9. Python 布尔类型

    布尔值表示两个值之一:True(真)或False(假). 布尔值 在编程中,您经常需要知道一个表达式是否为True或False. 您可以在Python中评估任何表达式,并获得两个答案之一:True或F ...

  10. openGauss/MogDB-3.0.0 dcf测试(非om安装)

    openGauss/MogDB-3.0.0 dcf 测试(非 om 安装) 本文出处:https://www.modb.pro/db/402037 IP 地址 ... LERDER ... FOLLO ...