移动端iPhone系列适配问题

问题一:苹果手机上的input按钮自带渐变效果

一样的代码,为啥在苹果手机上的input按钮就自带渐变效果,搞特殊吗?怎么让它显示正常?只需要加上outline:0px; -webkit-appearance:none; 清除原有样式,同时苹果手机上的input按钮自带圆角需要按需要去掉

问题二:表单input元素获取焦点时页面被放大的解决办法

原因:在iPhone上点击input框会有一个动画效果,这是苹果公司默认设置的,每次input获取焦点都会使页面放大,效果非常不好看,经过多方百度寻求到了一个完美的解决方案

<!--加入meta标记-->
<meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=2.0, user-scalable=no, width=device-width">
user-scalable改为no即可。
问题三:iPhone6 Plus大屏幕的适配问题

有时候,明明已经用了简单粗暴的媒体查询viewport的方式:

<meta name="viewport" content="width=device-width, initial-scale=0.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0" />

但是,还是会出现不适配的问题哦,那就在原有页面的基础上,再针对相应的屏幕大小单独写样式做适配。

@media(min-device-width:375px)and(max-device-width:667px)and(-webkit-min-device-pixel-ratio:2){

/*iphone6*/

}

@media(min-device-width:414px)and(max-device-width:736px)and(-webkit-min-device-pixel-ratio:3){

/*iphone6plus*/

}

1.png

PS:其实也可以直接使用实际的

device-width:如device-width:375px
问题四:移动端input 无法获取焦点的问题

测试的时候发现了一个bug,移动端的input都不能输入了,后来发现原来是这个梗

  -webkit-user-select :none ;

原因:在移动端开发中,我们有时有针对性的写一些特殊的重置,在整个项目之中有一个需求,禁止用户进行复制.选择.,于是写了这样的代码 -webkit-user-select: none;影响到了input获取焦点。

办法:把-webkit-user-select:none改成-webkit-user-select:auto;覆盖掉或者直接注释掉就行,我的项目是需要的,就不用注释了。

问题五:手机端 click 事件会有大约 300ms 的延迟

原因:手机端事件如下

touchstart –> touchmove –> touchend or touchcancel –> click

因为在touch事件触发之后,浏览器要判断用户是否会做出双击屏幕的操作,所以会等待300ms来判断,再做出是否触发click事件的处理,所以就会有300ms的延迟

解决方法:使用touch事件来代替click事件,如 zepto.js 的tap事件和fastClick,注:每次我都使用fastclick解决,这个插件最良心了,都有相应的事件可以代替click事件解决这个问题,大力推荐。

链接:https://www.jianshu.com/p/b26dce4d548f

原文地址:https://www.cnblogs.com/seven077/p/10640443.html

时间: 2024-07-30 16:18:20

移动端iPhone系列适配问题的相关文章

PC端、移动端的页面适配及兼容处理

一.关于移动端兼容性 目前针对跨终端的方案,主要分为两大阵营:一套资源Vs两套资源. 第一种是通过响应式或页面终端判断去实现一套资源适配所有终端: 第二种是通过终端判断分别调取两套资源以适配所有终端. 这两种思路我们并不能斩钉截铁的说哪一个更优选,正所谓”合适的才是最好的”. 思路一:通过响应式或页面终端判断去实现一套资源适配所有终端 优势:只需维护一套资源,维护成本较低. 劣势:需加载适配各个终端的各个资源,在不同终端通过响应式布局实现不同展现,部分交互效果需要在页面中做终端判断,代价较大,若

iPhone系列设备媒体查询:

这就引出一个问题,我们在对iPhone设备适配时候,又多出几种情况.iPhone系列设备媒体查询: @media only screen and (min-device-width: 320px){ //针对iPhone 3 } @media only screen and (min-device-width: 320px)and (-webkit-min-device-pixel-ratio: 2) { //针对iPhone 4, 5c,5s, 所有iPhone6的放大模式,个别iPhone6

再聊移动端页面的适配

再聊移动端页面的适配 https://www.w3cplus.com/css/vw-for-layout.html  原文网址 Flexible承载的使命 Flexible到今天也有几年的历史了,解救了很多同学针对于H5页面布局的适配问题.而这套方案也相对而言是一个较为成熟的方案.简单的回忆一下,当初为了能让页面更好的适配各种不同的终端,通过Hack手段来根据设备的dpr值相应改变<meta>标签中viewport的值: <!-- dpr = 1--> <meta name=

关于移动端页面的适配

移动端页面: 适配,适应各个不同的设备,如果是纯粹的移动端页面的话不用去考虑ipad,PC. 浏览器,微信(朋友圈),QQ(内置浏览器),UC 小米,华为会有部分兼容问题. 响应式: 必须共享一套html结构,样式不同而已,通过设备的分辨率来自动去切换样式 只适用于简单页面:博客,新闻,简单的公司门户: viewport 一般默认手机网页采用980px的宽,不设viewport就默认980: <meta name="viewport" content="width=de

移动端重构系列1——新建空白页面

移动端重构系列-mobile 本系列文章,如果没有特别说明,兼容安卓4.0.4+,测试demo html5文档申明 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> </body> </html> meta标签 <meta nam

移动端界面的适配

阅读目录 适配的要求 适配的方法,3个步骤 适配中背景图片的处理 适配的原理解析 摘要:在进行移动端界面的书写的时候,如果把宽度高度或者字体大小全部写死的话,那么在所有手机上看到的大小都一样,存在的问题就是同样大小的字体,或者一个盒子模型, 在大屏幕手机上看起来会有点偏小.比如iphone6PLUS.如果是做成适配的话,就很好的解决了这个问题,大屏幕显示的内容大一点,小屏幕显示的小一点. 所以今天做一个移动端页面适配的小小总结 回到顶部 适配的要求 1.在不同分辨率的手机上,页面看起来是自适应的

移动端rem.js适配屏幕

九月已成历史,十月如期而至...可能是九月工作比较清闲,周记就没怎么写,十月决不能这么堕落,立贴为证,至少保证5篇博客!!!如果没学到什么新知识,就对以往的那些工作中常用到的知识点做个总结...话不多说,今天就来谈谈移动端的rem适配...本文将从rem是什么.为什么要用rem适配.怎么用rem来讲解,保证浅显易懂... 1.什么是rem rem(font size of the root element)是指相对于根元素(<html>)的字体大小的单位.简单的说它就是一个相对单位.看到rem

混合式App开发 Apicloud 官方iPhone X 适配

iPhone X 适配 由于iPhone X的特殊造型,为了方便开发者对iPhone X进行适配,苹果在iOS 11中引入了Safe Area的概念,引擎也在api对象下添加了safeArea属性和safeareachanged事件,UI设计准则是页面重要的元素需要在安全区域以内,避免被遮挡. 对于大多数应用,通过以下几步基本就可以完成iPhone X的适配,其它的特殊情况如横竖屏切换等则需要结合使用场景另外处理. 注:如果没有iPhone X真机,有需求的开发者可以到这里下载iOS的模块开发工

移动端屏幕的适配

因为对H5较感兴趣,所以没事的时候会看一些文章博客. 废话不多说,先引入问题, 关于移动端屏幕的适配你有没有什么想说的 ?首先 我之前一直使用的就是这种Rem 缩放的方法去做的,content= "width= device-width",initial-scale=1.0,可以实现针对不同屏幕实现缩放效果,并且不出现滚动条, 而在内容部分使用 Rem进行对等比缩放,我们知道Rem 是一个相对长度 单位,它的大小会根据HTML根元素设置的font-size的大小进行换算, 根元素(ht