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

最新iOS设计规范三|3大界面要素:(Bars)

导航半透明,也可以添加背景色,并且必要时可以设置为隐藏。 ? 某些情况下可暂时隐藏导航,以提供更沉浸体验。例如,当人们查看全屏照片时,“照片”会隐藏导航和其他界面元素。...隐藏大标题导航边框。在iOS 13及更高版本中,可以通过删除导航阴影来隐藏导航底部边框(当滑动内容区域时,边框会自动重新出现)。...iPad上拆分视图一个例外,更多通过在这两种视图中使用无边框样式来保持主视图和辅助视图之间一致性。 导航控件 避免在导航上挤满太多控件。...补充工具拉平信息层次结构并同时提供对多个对等信息类别或模式访问一种好方法。使用侧边可快速导航到应用程序关键部分或文件夹和播放列表之类顶级内容集合。 尽可能让用户自定义边内容。...例如:在Safari中,当你开始滚动页面时,工具会自动隐藏,因为你可能正在阅读。你还可以点击屏幕底部让它再次出现。当弹出键盘时,工具也会被隐藏。 ?

9.8K10

吸顶效果解决方案

页面向下滚动超过吸顶元素初始位置时,把吸顶元素固定在顶部 要求吸顶元素一般二级导航、搜索框、文章标题(h1)、表头(thead)、tab条等等,共同特点在内容或功能上比较重要,但又不是最重要元素...(最重要元素通常固定在页面顶部,navbar-fixed-top) 二.PC解决方案 页面滚动到一定位置时,做一些事情 “回到顶部”按钮也是这样,页面向下滚动超过150px时,显示该按钮,否则隐藏...监听滚动判断位置方法完全失效,平滑吸顶效果变成了滚过临界位置直到停止滚动时,吸顶元素跳到目标位置,体验非常差,不可忍受 scroll不能用,但还可以有一些奇怪思路,比如定时器读scrollTop,touchmove...IOS 8+Safari和WKWebView能够疯狂触发scroll,无论手指在不在屏幕上,无论是不是惯性滚动期间。...CSS sticky并不能解决这个问题 笔者还没有找到合适解决方案,目前方案牺牲tab浏览状态独立性,多tab共用body滚动条,切换tab时滚回之前位置。

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

移动Web 开发中一些前端知识收集汇总

设备中safari私有meta标签,它表示:允许全屏模式浏览,在ios上,用户将网页添加到主屏后,再从主屏幕打开这个网页,可以隐藏浏览器地址和下面的toolbar; 第二个meta标签表示:强制让文档宽度与设备宽度保持...body=sms txt"> 发送短信附带内容 链接 Call us at 18888886666 拨打电话链接 移除 iOS...safari字体缩放功能会失效,因此最佳方案将 text-size-adjust 为 100% 。...动画过程中动画闪白可以通过backface-visibility 隐藏。..., 可用在图片上加这个属性禁止下载图片*/ -webkit-overflow-scrolling: touch;/*快速滚动和回弹,模拟原生app效果*/ click 事件 iossafariclick

3.8K50

实现滚动时Header自动隐藏

这样,header显示和隐藏就实现了,接下来就是检测滚动方向。...} else if (bottom) { isHidden.value = true } 关键,当向上滚动时,显示header;向下滚动时,隐藏header。...,这是为了避免iOS设备中safari浏览器橡皮筋效果导致误判 所以为什么 safari 橡皮筋效果也会触发scroll事件啊啊啊啊啊!!!...前者,可以通过判断y值是否为0(或小于0)来实现;而后者,正常来说,滚动到底部时,文档高度-视窗高度应该和滚动y值一致。...但是在safari里可能不一致,在safari中,当地址收缩时,上文公式成立;但是当地址展开状态时,两者会一个相差地址高度。而地址是否展开我没找到判断方法

2.2K30

移动端web开发笔记

以下历史原因: 2007年苹果发布首款iphone上IOS系统搭载safari为了将适用于PC端上大屏幕网页能比较好展示在手机端上,使用了双击缩放(double tap to zoom)方案,...双击缩放指用手指在屏幕上快速点击两次,iOS 自带 Safari 浏览器会将网页缩放至原始比例。...; /* 方法1 */   -webkit-appearance: none; /* 方法2 */ } 16、 快速回弹滚动 我们先来看看回弹滚动在手机浏览器发展历史: 早期时候,移动端浏览器都不支持非...body元素滚动条,所以一般都借助 iScroll; Android 3.0/iOS解决了非body元素滚动问题,但滚动条不可见,同时iOS上只能通过2个手指进行滚动; Android 4.0解决了滚动条不可见及增加了快速回弹滚动效果...(0, 0, 0, 0); } 但这个方法在三星机子上无效,有一种妥协方法把页面非真实跳转链接a标签换成其它标签,可以解决这个问题。

3.5K20

position:sticky兼容性尝试

问题 目前前端h5有个需求,就是“当页面上若干个标题被拖动到视口顶部时,则显示一个被定位到视口顶部tab标签,可对这个tab标签进行点击导航,并在某个特殊情况下隐藏”。...最简单粗暴做法就是针对document.body做scroll侦听,在函数中遍历所有的标题并计算出getBoundingClientRect计算出距离适口顶部距离,决定是否显示tab或者活动标签,...在pc和安卓chrome中并未实现该属性,而在pc和iOS safari中全部兼容该属性,因此针对iOS可以单独使用sticky完成兼容。...sticky布局有着几个条件: + 元素并不会脱离文档流,当元素被粘在视口顶部时,原来在文档流中位置仍然占据,这点类似relative定位 + 元素相对于其最近可滚动祖先元素“粘性定位”,如果其祖先元素都不能滚动...若最近祖先元素设置为overflow:hidden,则元素不会sticky定位 因此解决ios代码可以这样: // sticky类为粘性布局样式设置 if (gtIOS6) { // 大于等于

3.6K100

灵活运用CSS开发技巧

,自行根据项目兼容需求考虑是否使用 以下代码全部基于CSS进行书写,没有任何JS代码,没有特殊说明情况下所有属性和方法都是CSS类型 一部分技巧自己探讨出来,另一部分技巧参考各位前端大神们,都是一个互相学习工程...在线演示 Behavior Skill 使用overflow-scrolling支持弹性滚动 要点:iOS页面非body元素滚动操作会非常卡(Android不会出现此情况),通过overflow-scrolling...:touch调用Safari原生滚动来支持弹性滚动,增加页面滚动流畅度 场景:iOS页面滚动 兼容:iOS自带-webkit-overflow-scrolling body { -webkit-overflow-scrolling...在线演示 使用max-height切换自动高度 要点:通过max-height定义收起最小高度和展开最大高度,设置两者间过渡切换 场景:隐藏式子导航、悬浮式折叠面板 兼容:max-height...在线演示 标签导航 要点:可切换内容导航 场景:页面切换 兼容:~ 代码:在线演示 ? 在线演示 折叠面板 要点:可折叠内容面板 场景:隐藏式子导航 兼容:~ 代码:在线演示 ?

4.5K20

iOS 9人机界面指南(四):UI元素(上) - 腾讯ISUX

以下有一些方法可以让滚动内容能正常显示在状态 后面: 使用导航控制器(navigation controller)来展示内容。导航控制器自动展示状态背景,同时能确保内容视图不会出现在状态后面。...在用户需要专注于内容时候,可以考虑隐藏导航。当你这么做时候,请确保用户通过一个简单手势(比如一下轻击)即可重新唤起导航。 ?...在iOS 8以及之后版本里,你可以通过UISearchDisplayController简单快捷地把搜索放在导航中。...但请注意,由于键盘布局以及输入方法由用户系统语言设置决定,这是你不能控制iOS提供了各种不同键盘类型,以便用户输入不同类型文本。...用户期望使用iOS自带Safari来浏览网页内容,因此我们并不推荐你在自己app里复制这种以被广泛应用功能。

10.1K51

移动端那些坑

Safariiframe会自动去适应内容大小而无视CSS中设置width,该特性只能通过scrolling="no"属性关闭,并通过设置如下CSS样式设置width:width: 1px; min-width...当使用-webkit-overflow-scrolling: touch;时,同时使用::-webkit-scrollbar伪类display:none隐藏滚动条在iOS 11+出现失效情况,需要使用如下方案解决...,在iOS下,需要禁止页面中touchmove事件,在安卓下,需要给html, body元素加上如下CSS:height:100%;overflow:hidden;。...被屏蔽 class 有些浏览器或者插件会通过DOM元素class来识别是否为广告,并隐藏或者直接删除DOM。...在重叠区域里,被遮盖元素绑定click,遮盖元素绑定touch事件,且touch后遮盖元素会隐藏的话,就会造成穿透,因为click在touch之后延迟触发,浏览器会误认为在遮盖元素上触发了

1.8K30

移动端H5页面开发坑点指南

属性在IOS及Android上无法使用,在PC端正常 2.audio元素没有设置controls时,在IOS及Android会占据空间大小,而在PC端Chrome不会占据任何空间 问题4:Safari...最简便方式,然而ios不支持 目前解决方案:音乐图标负责跑动画,图标父级元素负责记录停止时转动值 ios防止长按页面元素被选中 解决:加入样式可禁止用户进行复制,ios和一般安卓都可以解决...:hidden; //设置进行转换元素背面在面对用户时是否可见:隐藏 -webkit-perspective: 1000; 解决active伪类失效 </body...:纠错 关于iOS与OS X端字体优化(横竖屏会出现字体加粗不一致等)问题 iOS浏览器横屏时会重置字体大小,设置text-size-adjust为none可以解决iOS问题,但桌面版Safari...00:00,也就是说ios默认就是从0开始计算,我们不需要设置后面的时分秒为00:00:00 iOS(safari)标签绑定点击事件无效 iOS(safari)有时候某个标签绑定点击事件无效,加上空

3K10

【WebApp开发必知】移动游览器私有Meta属性

Meta属性在移动端可以说是不得不知道使用得非常频繁技术。下面就给大家整理一下在移动端各大浏览器一些私有的Meta属性。 一、Safari浏览器私有 Meta 属性 1.让文档宽度与设备宽度保持1:1,并且文档最大宽度比例1.0,且不允许用户点击屏幕放大浏览...; 2.在ios上,用户将网页添加到主屏后,再从主屏幕打开这个网页,可以隐藏浏览器地址和下面的toolbar; 3.其值有三个: default(白色)black(黑色) black-translucent...4.开启对web app程序支持 5.指在发送到屏幕时候默认命名。 6.让网页在加载时便可隐藏顶部地址与底部导航。 二、QQ浏览器私有 Meta 属性(x5内核定制标签) <!...不过我们可以通过这个属性来强制浏览器显示图片,而有时候为了提高用户体验,无图模式还是有必要,对于有些 图片不得不显示,如:验证码,我们也可以单独设置其为显示模式,其他图片可根据用户设置来进行弹性选择

1.7K20

兼容iphone x * 刘海正确姿势

以往做法 其实对于 web 前端来说,刘海在绝大多数场景下可以不用处理,因为 safari 或客户端(微信,手Q等) statusBar 已经替我们抹平了顶部刘海,我们只需要关心底部那条黑色胡子...fixed; left: 0; bottom: 0; width: 100%; height: 34px; background: #fff; } } 这里处理方法使用了媒体查询...在 safari 往上段滑动一小段距离,可以看到当 safari 底部操作出现后,页面依然会保留着距底部 34px 空白。...那么是不是 ios11 以下就用不了这些了呢?是的,但你见过 iphone x+ 有 ios 11以下? 所以我们可以愉快搞下去。...在 safari 中,页面往上稍滑动一点,出现 safari 操作后,底部按钮依然会紧贴着操作,非常有灵性: ? 处理起来一切都显得 简洁优雅细腻。

1.1K30

CSS深入理解学习笔记之overflow

hidden:超出部分隐藏。   scroll:超出可滚动。   auto:若超出才出现滚动条。   inherit:继承。...body/html与滚动条:     无论什么浏览器,默认滚动条均来自,而不是。...常用修复浮动方法: .clearfix{*zoom:1;} .clearfix:after{content:'';display:table;clear:both;} 常用自适应布局: .cell...resize拖拽区域默认大小17px * 17px。滚动尺寸也是17px。   文本溢出省略号显示属性text-overflow:ecllipsis。...锚点:就是标签ID。     锚点定位:通过锚链定位锚点位置。   (2)锚点定位本质     在页面可滚动容器中,通过锚链滚动到其对应锚点元素,即改变容器滚动高度。

3.5K50

如何使用 CSS 设置和自定义水平和垂直滚动

滚动图形用户界面(UI)中必不可少组件。滚动条允许用户查看超出其容器宽度或高度内容。滚动条还使用户能够查看超出屏幕宽度或高度内容。默认情况下,浏览器会为body内容溢出包含一个滚动条。...我们导航将包含以下项目:主页商店市场产品卖家制造商分销商连锁经理银行我们在这一步目标创建一个如下截图所示导航导航可以使用下面的代码片段创建上述项目的初始导航: a{...body高度以使其足够长以滚动以下CSS代码片段描述了如何将初始导航样式设置为侧边并调整body底部边距。...将overflow-y属性设置为scroll会为超出其高度内容创建一个可滚动容器。超出侧边范围项目将被隐藏。右侧会出现一个滚动条,允许您网站用户查看所有内容。...c) 一次性样式所有滚动条a). 样式特定滚动条。有一种简单方法可以为网站上不同滚动条设置特定样式。这涉及通过设置滚动容器来添加样式。您可以通过标签名称或类名称选择容器并向其分配样式。

76600

微信小程序解决ios页面上推问题

相信大家写原生小程序都遇到过一个问题,当输入框聚焦键盘弹起时,页面会自动上推,使得输入框刚好位于键盘之上,在安卓中推动只是内容,但在ios中,推动整个页面,导致导航被推出屏幕外,如下:图片针对这个问题...图片如上图,我期望键盘弹起能刚好将整个输入顶在键盘之上,所以我选择给这一加上唯一类名,里面的input自定义属性值为该输入唯一类名,这样做事为了当我触发键盘事件时,能拿到当前输入类名,获取该元素坐标信息...scrollTop, duration: 300, }); }); } catch (error) {} }}这里涉及到几个值,参见下图:图片注意:这里页面使用原生导航...,若使用自定义导航,那么B/D/E/H都会再加上G区域,E/H在官方文档有说到,元素基于显示区域坐标位置。...肉眼观察,方案一推动及时,方案二有一点点延迟,如下:图片图片通过调试发现,他们触发时机和滚动时机都差不多,但是键盘事件触发多次,而聚焦和失焦只会触发一次,大胆猜测,这可能就是上述问题原因2.

4.9K30

移动端浏览器和微信浏览器上禁止body滚动

一般禁止body滚动做法就是设置overflow:hidden。...; position: fixed; } 这个就是完全禁止上下滑动,没有滚动条,且在iOSsafari浏览器上完全不能上下滚,但是确发现微信浏览器上可以上下缩动(下面再解决)。...代码如下: /*去掉手机滑动默认行为*/ $('body').on('touchmove', function (event) { event.preventDefault(); }); 我还收集了一些设置隐藏滚动方法...参考:http://www.cnblogs.com/lbcheng/p/6044303.html 经过上面的设置,如果用户在微信浏览器上不能滚动,但是跳出到了iOSsafari浏览器之后,会有很多变数...上面的思路实现:1、通过微信useragent来判断,如果微信浏览器自动加入class去设置。2、非微信useragent就默认不加class。

2.8K10

BootStrap应用开发学习入门1

导航在移动设备视图中折叠,随着可用视口宽度增加,导航也会水平展开。在 Bootstrap 导航核心中,导航包括了站点名称和基本导航定义样式。...导航 描述:navigation 一个很好功能, Bootstrap 网站一个突出特点。...#随着页面一起滚动静态导航 .navbar-header #div标签 .navbar-brand #a标签使用文本看起来更大一号 # 第一个 data-toggle,用于告诉 JavaScript...其基本实现是随着您滚动,基于滚动位置向导航添加 .active class。...(2)通过 JavaScript:您可以通过 JavaScript 调用滚动监听,选取要监听元素,然后调用 .scrollspy() 函数: $('body').scrollspy({ target

44.6K21

BootStrap应用开发学习入门1

导航在移动设备视图中折叠,随着可用视口宽度增加,导航也会水平展开。在 Bootstrap 导航核心中,导航包括了站点名称和基本导航定义样式。...导航 描述:navigation 一个很好功能, Bootstrap 网站一个突出特点。...#随着页面一起滚动静态导航 .navbar-header #div标签 .navbar-brand #a标签使用文本看起来更大一号 # 第一个 data-toggle,用于告诉 JavaScript...其基本实现是随着您滚动,基于滚动位置向导航添加 .active class。...(2)通过 JavaScript:您可以通过 JavaScript 调用滚动监听,选取要监听元素,然后调用 .scrollspy() 函数: $('body').scrollspy({ target

44.2K20

兼容iPhone X* 刘海正确姿势

以往做法 其实对于 web 前端来说,刘海在绝大多数场景下可以不用处理,因为 safari 或客户端(微信,手Q等) statusBar 已经替我们抹平了顶部刘海,我们只需要关心底部那条黑色胡子...position: fixed;    left: 0;    bottom: 0;    width: 100%;    height: 34px;    background: #fff;  }} 这里处理方法使用了媒体查询...在 safari 往上段滑动一小段距离,可以看到当 safari 底部操作出现后,页面依然会保留着距底部 34px 空白。...那么是不是 ios11 以下就用不了这些了呢?是的,但你见过 iphone x+ 有 ios 11以下? 所以我们可以愉快搞下去。...中,页面往上稍滑动一点,出现 safari 操作后,底部按钮依然会紧贴着操作,非常有灵性: 处理起来一切都显得 简洁优雅细腻。

63210
领券