移动端、微信小程序兼容性问题汇总(持续更新……
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 事件会失效
解决方案:
- 将 click 事件直接绑定到目标元素(即 .target ) 上
- 将目标元素换成 <a> 或者 <button> 等可点击的元素
- 给目标元素添加一个空的 onclick=""(<div class="target" onclick="">点击我!</div>)
- 把 click 改成 touchend 或 touchstart(注意加上preventDefault)
- 将 click 元素委托到非 document 或 body 的父级元素上
- 给目标元素加一条样式规则 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就没有滚动条了。
(持续更新中……)
移动端、微信小程序兼容性问题汇总(持续更新……的更多相关文章
- 微信小程序开源项目库汇总
最近做了一个微信小程序开源项目库汇总,里面集合了OpenDigg 上的优质的微信小程序开源项目库,方便移动开发人员便捷的找到自己需要的项目工具等,感兴趣的可以到GitHub上给个star. UI组件 ...
- 微信小程序常用样式汇总
本文系转载: 原文作者:chenzheng8975 原文地址:https://www.cnblogs.com/chenzheng8975/p/9605186.html 微信小程序常用样式汇总 小程序特 ...
- 微信小程序开发问题汇总
前言 经过将近一个多月的开发,我们团队开发的微信小程序 "出发吧一起" 终于开发完成,现在的线上版本为 2.2.4-beta 版 本文档主要介绍该小程序在开发中所用到的技术,已经在 ...
- java服务端微信小程序支付
发布时间:2018-10-05 技术:springboot+maven 概述 java微信小程序demo支付只需配置支付一下参数即可运行 详细 代码下载:http://www.demodash ...
- 转载:移动端+微信小程序实现,手机端滑动分页代码思路(ajax)
//一般在PC上我们要分页都是通过上一页和下一页来实现的,手机通过当下滑到一定程度的时候自动加载下一页面//实现思路:首先加载部分数据,当下滑到某个元素可见的时候,如果还有数据,则新发送请求,然后追加 ...
- 微信小程序——报错汇总
tabBar.list[2].selectedIconPath 文件不存在 很明显是文件名错了,定义的my-acive,少写了个t,眼睛出问题了~ module "static/vant/c ...
- 微信小程序开发资料汇总
>> 微信小程序开发工具下载 社区推荐: >>蜂鸟-微信小程序开发者社区>> 很快-微信小程序开发者社区 博文推荐: >> 微信小程序开源Demo精选& ...
- 微信小程序开发参考资料汇总
不错的微信小程序入门教程:微信小程序入门二: 条件.遍历.网络请求.获取本地图片http://blog.csdn.net/lecepin/article/details/54016701 微信小程序入 ...
- 微信小程序常见问题集合(长期更新)
最新更新: 新手跳坑系列:推荐阅读:<二十四>request:fail错误(含https解决方案)(真机预览问题 跳坑指南<七十>如何让微信小程序服务类目审核通过 跳坑六十九: ...
- 微信小程序setData复杂数组的更新、删除、添加、拼接
众所周知,微信小程序里所有对数据的修改只有在setData里修改才会在页面上渲染.在此分享小程序里复杂数组的更新.删除.添加.拼接 初始数据 数组嵌套对象 data: { cartList = [{ ...
随机推荐
- Python glob库的用法
一.匹配指定文件夹下的所有文件 files = glob.glob("C:\\Users\\liuchunlin2\\Desktop\\测试数据\\*") print(files) ...
- linux系统centos7.9如何安装nginx
1.官网下载nginx nginx官网:https://nginx.org/ 选择稳定版进行下载,也可以下载老版本,下载成功后上传到服务器. 2.使用wget下载 访问nginx官网,在下载页面鼠标右 ...
- KingbaseES数据库配置Hikari数据源
Hikari是一个高性能的数据库连接池,它是Spring Boot 2.x中的默认数据源. 一.下载驱动 打开下面网址:选择对应平台的jdbc驱动程序. 人大金仓-成为世界卓越的数据库产品与服务提供商 ...
- Kingbase ES 自定义聚合函数和一次改写案例
文章概要: KES的SQL的语法暂时不兼容oracle的自定义聚合函数的创建语法和流程,但是可以使用KES已支持的语法改写. 本文整理和简单解析了自定义聚合函数的原理和解读了范例代码. 并根据客户代码 ...
- UE4中的GamePlay模块
链接 该文档主要通过学习自己构建文件,形成GamePlay模块.下图是利用引擎创建的一个空模板C++代码结构 简要流程 UBT 虚幻编译工具(UBT:Unreal Build Tool)是一个自定义工 ...
- 一招搞定进制转换--java篇
java中进制转化只需要记住这两个方法,后续再遇到进制转换的问题,轻松破解! 进制转换的核心就是: 其他进制--->十进制--->其他进制 1.其他进制转成十进制 valueOf() 方法 ...
- 攻防世界 Replace Reverse二星题
解题过程中,虽然解出来了,但是磕磕绊绊犯了一些错误,记录一下 分析过程 PE查壳 有一个upx壳,最下面给了脱壳提示: upx.exe -d Replace.exe 脱壳结束,丢到IDA里,SHIF+ ...
- Git 教程:解密 .gitignore 文件、合并分支、解决冲突、及 Git 帮助
Git 帮助 如果你忘记了命令或命令的选项,你可以使用 Git 帮助. 在命令行中,有几种不同的使用帮助命令的方式: git command -help - 查看特定命令的所有可用选项 git hel ...
- Makefile 基础教程:从零开始学习
在软件开发过程中,Makefile是一个非常重要的工具,它可以帮助我们自动构建程序,管理程序依赖关系,提高开发效率.本篇博客将从基础开始,介绍Makefile的相关知识,帮助大家快速掌握Makefil ...
- Docker学习路线6:使用第三方镜像
第三方镜像是在Docker Hub或其他容器注册表上提供的预构建Docker容器镜像.这些镜像由个人或组织创建和维护,可以作为您容器化应用程序的起点. 查找第三方镜像 Docker Hub 是最大和最 ...