首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

移动开发实用

*/ body{font-family:Helvetica;} 参考《移动使用字体的思考》 移动端字体单位font-size选择px还是rem,对于只需要适配手机设备使用px即可,对于需要适配各种移动设备...个 高清显示屏的位图被放大,图片会变得模糊,因此移动端的视觉稿通常会设计为传统PC的2倍 那么,前端的应对方案是: 设计稿切出来的图片长宽保证为偶数,并使用backgroud-size把图片缩小为原来的...,可明示用户有些事情正要发生,是一个比较好体验,但是移动设备并没有鼠标指针,使用css的hover并不能满足我们的需求,还好国外有个激活css的active效果,代码如下, <!...{ .css{} } audio元素和video元素ios和andriod无法自动播放 应对方案:触屏即播 $('html').one('touchstart',function(){...web页面使用position:fixed问题总结》 《使用iScroll.js解决ios4下不支持position:fixed的问题》 如何阻止windows Phone的默认触摸事件 winphone

6.4K30

CSS 下拉菜单与 focus

移动端上稍微有些不同,毕竟所有控制——无论单击、长按抑或划动——都由接触开始,也没有鼠标的「悬停」逻辑,为了方便判定,移动端上若想激活 :hover 也是单击(触摸)。...导航栏之所以不直接显示而是放进下拉菜单,也是为了移动端等小尺寸设备显示得优雅一点,因此这个单击判定其实是优势。...不过还是有点问题,比如一台 iPad mini 这种尺寸设备,竖屏 + 鼠标情况下,但凡鼠标掠过就会调出下拉菜单;或者即便是 PC,把窗口缩小也同样是掠过频繁调出下拉菜单……毕竟是为了小尺寸设备设计的而其中并非全是触摸设备...其次,当一个元素被聚焦时,点击一般的空白处无法使它失焦。这个问题很迷, iOS Safari 上 100% 复现而在 iOS Chrome 上完全无法复现。...因此,「Cards」主题在 iOS Safari 上会发生点击下拉菜单可以展开、但是点击空白地方无法收回的问题,除非之后点击的是链接之类的。

5.4K20
您找到你想要的搜索结果了吗?
是的
没有找到

什么是移动端开发【重点学习系列—干货十足–一万字详解】

移动端开发的一些概念、专有名词、缩放、viewport移动端事件、适配问题以及一些工作沟通经常会用到这些方面来说一下移动端 文章目录 引言 1-移动端开发相关概念 移动端特点 屏幕大小 注意:...描述屏幕属性时使用 ppi,开发过程描述屏幕设备使用 dpi。... CSS 标准文档,视口也被称为初始包含块,它是所有 CSS 百分比宽度推算的根源。...viewport-fit 设置为 cover 可以解决『刘海屏』的留白问题 4-移动端事件 事件类型 移动端事件列表 touchstart 元素上触摸开始时触发 touchmove 元素上触摸移动时触发...touchend 手指从元素上离开时触发 touchcancel 触摸被打断时触发 这几个事件最早出现于IOS safari,为了向开发人员转达一些特殊的信息。

2.4K21

移动端web开发笔记

例如在触摸过程突然页面alert()一个提示框,此时会触发该事件,这个事件比较少用 4、移动端click屏幕产生200-300 ms的延迟响应 移动设备上的web网页是有300ms延迟的,玩玩会造成按钮点击延迟甚至是点击失效...15、 移动端如何清除输入框内阴影 iOS上,输入框默认有内部阴影,但无法使用 box-shadow 来清除,如果不需要阴影,可以这样关闭: input, textarea {   border: 0...如果你不想用户可以选中页面的内容,那么你可以css禁掉: .user-select-none { -webkit-user-select: none; /* Chrome all / Safari...,可明示用户有些事情正要发生,是一个比较好体验,但是移动设备并没有鼠标指针,使用css的hover并不能满足我们的需求,还好国外有个激活css的active效果,代码如下, <!...) { .css{} } 22、audio元素和video元素ios和andriod无法自动播放 应对方案:触屏即播 $('html').one('touchstart',function(

3.5K20

jimojianghu

然而那能怎么办,用户第一,自然得快速解决这个问题,而且是触控板和触摸屏都得解决。 以前,如果要禁止移动设备触摸屏上,手指缩小放大的功能,都会想到使用viewport 来处理。...因为笔记本触摸板双指滑动,将响应该事件,如果对该事件阻止默认行为,就能解决缩放问题了。 注意: passive: false 必须使用,下面会介绍。...要禁止触摸屏的手指缩放,可以使用如下的 CSS 和 JS 两种方法。...Chrome,wheel / touch 等事件的 passive 会默认设置为true,但Safari不支持。...由于目标被视为被动,因此无法在被动事件侦听器阻止默认行为。 可能的发生情景:移动使用touch事件后,垂直平移时的报错。

3.8K00

移动端点击事件延迟的诞生消亡史

尽管如此,移动网络仍然受到一个巨大的反馈问题的困扰:触摸任何元素后,延迟 300 毫秒。这种延迟是许多用户认为基于 HTML 的 Web 应用程序“卡顿”的最重要原因之一。...诞生史 2007 年,苹果公司发布首款 iPhone 之前,由于当时的网站普遍为大屏幕设备所设计,为了应对 iPhone 这种小屏幕设备浏览桌面网站的问题,由此,苹果引入了多项变革,其中就包含了“双击缩放准确定位正文主体...因此,IOS Safari 浏览器首先引入了 300 毫秒延迟,用来判断用户是否会再次点击,也就是说,第一次点击延迟 300 毫秒,300 毫秒后用户没有再次点击则认定为用户进行普通的单击操作,并触发单击...消亡史 虽然从当时来看 300ms 延迟并没有什么不妥,然而在越来越注重用户体验的移动互联网时代,这种延迟是无法被用户所接受的,加之开发者也可以对网站进行响应式适配,双击缩放的操作变成了一种可有可无的操作...根据规范,CSS 属性 touch-action 用于设置触摸屏用户如何操纵元素的区域(例如,浏览器内置的缩放功能)。

2.8K20

第135天:移动端开发经验总结

3、全屏自适应布局   适用场景:单页面网页,移动web app 页面。 二 、Box-sizing移动端的使用   百分比定宽的页面经常使用。...四、常见的移动问题 1、什么是Retina 显示屏,带来了什么问题   retina:一种具备超高像素密度的液晶屏,同样大小的屏幕上显示的像素点由1个变为多个,如在同样带下的屏幕上,苹果设备的retina...显示屏,像素点1个变为4个   高清显示屏的位图被放大,图片会变得模糊,因此移动端的视觉稿通常会设计为传统PC的2倍。   ...、 禁止文本缩放 当移动设备横竖屏切换时,文本的大小会重新计算(或者在内嵌浏览器设置字体的大小),进行相应的缩放,当我们不需要这种情况时,可以选择禁止: html {   -webkit-text-size-adjust...: 100%; } 8、移动端禁止选中内容 如果你不想用户可以选中页面的内容,那么你可以css禁掉: .user-select-none { -webkit-user-select: none

1.6K30

通过 Mac 远程调试 iPhoneiPad 上的网页

我们知道 Mac/PC 上的浏览器都有 Web 检查器这类的工具(如最著名的 Firebug)对前端开发进行调试,而在 iPhone/iPad 由于限于屏幕的大小和触摸屏的使用习惯,直接对网页调试非常不方便...iOS 6 给 Safari 带来了远程的 Web 检查器工具(Remote Web Inspector),你可以通过模拟器或者真实的设备(通过 USB 连上 Mac)进行调试。...然后打开 Safari,开启你要调试的网页,当然原生应用通过 WebView 开启的网页也是可以调试的。 3....CSS 做些实时的改动,查看修改后的效果。...另外它还支持触摸检查(Touch to inspect):激活检查器上的手型图标,就可以通过 iPhone/iPad 上触摸,就能立即找到检查器对应的 DOM 元素。 ----

1.6K20

移动端click事件300ms延迟

但是,随着用户对交互体验的要求越来越高,现今,移动端300ms的点击延迟逐渐变得明显而无法忍受。 那么,移动端300ms的点击延迟是怎么来的呢?...产生原因 移动浏览器上支持的双击缩放操作,以及IOS Safari 上的双击滚动操作,是导致300ms的点击延迟主要原因。...指针事件是一个新的 web 事件系列,相应的规范旨在使用一个单独的事件模型,对所有输入类型,包括鼠标 (mouse)、触摸 (touch)、触控 (stylus) 等,进行统一的处理。...从实际应用的角度来看,touch-action决定了用户点击了目标元素之后,是否能够进行双指缩放或者双击缩放。因此,这也相当完美地解决了 300 毫秒点击延迟的问题。...tap事件:能较好解决点击延迟,并且对其他移动触摸事件也有较好支持,但存在点透问题,不知最新版是否解决。 fastclick:当前较好的专门解决点击延迟的库,脚本尺寸相对较大。

2.7K21

移动端网页调试

使用Chrome Develop Tool调试 作为一个前端开发工程师,没下载个谷歌浏览器都不好意思说自己是混这行的了。移动开发的过程,我们是可以使用桌面浏览器(推荐谷歌)进行调试的。...使用IOS Safari + Mac OS Safari配合调试 这个方法对用MAC来办公的伙伴就比较友好了~ Apple允许开发者通过数据线连接的方式,Mac OS的Safari里面调试iOS设备上的网页...但是这种方法使用前,需要简单设置以下内容: iOS设备上,打开Safari的Web检查器,选择设置 -> Safari -> 高级 -> Web检查器命令。...(用到JavaScript的话,顺便在Web检查器同级上开启吧) 计算机上的Safari启用开发菜单,选择偏好设置 -> 高级 -> 菜单栏显示'开发'菜单命令。...优点:可以完全真机设备上调试网页,无论是HTML和CSS,还是脚本和请求,都和在桌面浏览器一样,最重要的是当前调试的是真实环境下的页面。

1.4K30

移动设备上的前端开发:特殊考虑因素探讨

进行移动前端开发时,开发者需要考虑一系列特殊因素,包括响应式设计、触摸事件处理、性能优化等。本文将深入探讨移动设备进行前端开发时需要考虑的重要因素。...移动友好的交互元素: 保证按钮、链接等交互元素足够大,易于点击,以适应手指触摸操作。触摸事件处理移动设备上,用户主要通过触摸操作来与网站或应用进行交互。...避免悬停效果: 悬停效果在移动设备无法实现,避免依赖这些效果来传达信息。触摸优化的动画: 如果有动画效果,确保它们移动设备上流畅运行,避免卡顿和性能问题。...兼容性测试: 不同的移动浏览器中进行充分的测试,确保应用在各种情况下都能正常工作。前缀和特性: 了解不同浏览器的前缀和支持情况,避免使用过时或不支持的CSS属性和JavaScript特性。...移动优先体验移动设备进行前端开发时,移动优先的用户体验至关重要。考虑到用户可能处于不同的环境,如移动触摸操作、有限的带宽等,提供一个流畅、简洁且高效的体验。

17020

第123天:移动web开发的常见问题

手机端页面自适应解决方案—rem布局进阶版(附源码示例) 三、移动web开发的常见问题 1、移动端如何定义字体font-family?...对于只需要适配手机设备使用px即可。 对于需要适配各种移动设备使用rem,例如只需要适配iPhone和iPad等分辨率差别比较挺大的设备。...高清显示屏的位图被放大,图片会变得模糊,因此移动端的视觉稿通常会设计为传统PC的2倍。...如果你不想用户可以选中页面的内容,那么你可以css禁掉: .user-select-none { -webkit-user-select: none; /* Chrome all / Safari...移动触摸按钮的效果,可明示用户有些事情正要发生,是一个比较好体验,但是移动设备并没有鼠标指针,使用css的hover并不能满足我们的需求,还好国外有个激活css的active效果,代码如下: <html

1.5K20

📚一站式解决:H5开发全攻略,看这篇让你省时又省力

mediaQuery: false, // 是否媒体查询的css代码进行转换,默认false replace: true, // 是否直接更换属性值,而不添加备用属性...和transform-style属性,可以解决移动设备上动画闪屏的问题,提供更流畅的动画效果。...⭐️⭐️⭐️⭐️⭐️click 点击延迟与穿透问题 现象 iOS 设备上,单击事件可能会有 300ms 的延迟,因为 Safari 浏览器需要在单击 300ms 后判断用户是否进行了第二次点击以实现双击缩放操作...原因 这是因为移动设备的物理像素密度与 CSS 像素的比例(设备像素比)导致的。 解决方案 利用伪元素和 scale 来实现 0.5px 的效果。...现象 某些 Android 设备的原生浏览器使用 position: sticky 实现的元素不能正常吸顶。

40820

接上一篇事件详解

mouseenter事件:鼠标光标从元素外部移动到元素范围之内被触发;这个事件不冒泡; mousemove事件:当鼠标指针元素内部移动时重复地触发。...),Ajax应用,开发人员经常使用url参数列表保存状态或导航信息; 我们必须把hashchange事件添加到window对象,然后当url参数列表只要发生变化就会调用此事件,此事件对象event...—orientationchange事件 苹果公司为移动safari添加的orientationchange事件是能让用户确定何时将设备由横向查看模式切换到纵向模式触发的事件;此属性包含三个值,0表示肖像模式...;90表示向左旋转的横向模式(主屏幕按钮右侧),-90表示向右旋转的横向模式(主屏幕按钮左侧), 理解移动端的事件—触摸与手势事件 有以下几个触摸事件: touchstart: 当手指触摸屏幕时触发...上面几个事件都属于冒泡事件,我们可以对此进行取消事件,每个触摸的event对象都提供了鼠标中常见的属性; bubbles, cancelable,view,clientX, clientY ,screenX

1.8K60

移动端页面IOS里滑动不顺畅解决办法

开发移动端的同学可能都知道,当在你用overflow-y:scorll属性的时候,内容超出容器溢出滚动的效果很迟顿,特别是IOS系统里,通常情况下,我们为了追求好的用户体验,会使用屏幕滚动插件better-scroll...简单说明一下: -webkit-overflow-scrolling :控制元素移动设备上是否使用滚动回弹效果。 auto:使用普通滚动, 当手指从触摸屏上移开,滚动会立即停止。...touch:使用具有回弹效果的滚动, 当手指从触摸屏上移开,内容会继续保持一段时间的滚动效果,继续滚动的速度和持续的时间和滚动手势的强烈程度成正比。...safari上,点击其他区域,再在滚动区域滑动,滚动条无法滚动。  safari上,使用了-webkit-overflow-scrolling:touch之后,页面偶尔会卡住不动。...解决问题的方法: 第一步:将使用-webkit-overflow-scrolling的元素的定位取消或手动改成position:static; 第二步:将使用-webkit-overflow-scrolling

2K10

吃透移动端 H5 与 Hybrid|实践踩坑12种问题汇总

产生原因 为什么 iOS 的 webview 滑动不流畅,它是如何定义的? 最终我 safari 文档里面寻找到了答案(文档链接在参考资料项)。 ?...iOS safari,为了实现双击缩放操作,单击 300ms 之后,如果未进行第二次点击,则执行 click 单击操作。也就是说来判断用户行为是否为双击产生的。...原理与解决方案 解决方案一:使用 touchstart 替换 click 前面已经介绍了,移动设备不仅支持点击,还支持几个触摸事件。那么我们现在基本思路就是用 touch 事件代替click 事件。...由于技术水平有限,文章如有错误地方,请在评论区指出,感谢! 关于移动端 H5 的文章告一段落了,之后实践遇到的问题都将在此文中更新。另外准备做一个移动端 H5 开源项目。...参考资料 Safari CSS Reference MDN touch 事件 MDN css var() MDN css env() csswg env() drafts fastclick 源码 DSBridge-Android

2.1K20

12个关于移动 H5 开发的采坑问题汇总

产生原因 为什么 iOS 的 webview 滑动不流畅,它是如何定义的? 最终我 safari 文档里面寻找到了答案(文档链接在参考资料项)。...iOS safari,为了实现双击缩放操作,单击 300ms 之后,如果未进行第二次点击,则执行 click 单击操作。也就是说来判断用户行为是否为双击产生的。...原理与解决方案 解决方案一:使用 touchstart 替换 click 前面已经介绍了,移动设备不仅支持点击,还支持几个触摸事件。那么我们现在基本思路就是用 touch 事件代替click 事件。...由于技术水平有限,文章如有错误地方,请在评论区指出,感谢! 关于移动端 H5 的文章告一段落了,之后实践遇到的问题都将在此文中更新。另外准备做一个移动端 H5 开源项目。...参考资料 Safari CSS Reference[6] MDN touch 事件 MDN css var\(\)[7] MDN css env\(\)[8] csswg env\(\) drafts[

1.5K20

中高级前端必须注意的40条移动端H5坑位指南 | 网易三年实践

HTML方向 调用系统功能 使用能快速调用移动设备的电话/短信/邮件三大通讯功能,使用能快速调用移动设备的的图库/文件。...唤醒原生应用的前提是必须在移动设备里安装了该应用,有些移动端浏览器即使安装了该应用也无法唤醒原生应用,因为它认为URL Scheme是一种潜在的危险行为而禁用它,像Safari和微信浏览器。...2007年苹果发布首款iPhone搭载的Safari为了将桌面端网站能较好地展示移动端浏览器上而使用了双击缩放。...目前很多解决方案都无法做到这一点,全部解决方案都能禁止的滚动行为却引发其他问题。...这种情况Safari上特别明显,简单概括就是往返页面无法刷新。 「往返缓存」指浏览器为了页面间执行前进后退操作时能拥有更流畅体验的一种策略,以下简称BFCache。

4.2K21
领券