移动web中一些问题处理与事件说明
1.1.1 所有盒子以边框开始计算
/*设置宽度以边框开始计算*/
-webkit-box-sizing: border-box;
box-sizing: border-box;
在移动端通常使用的是百分比布局,那么这样的布局如果使用border或者padding或使容器的宽度超出屏幕的宽度产生滚动条。那么我们的解决方案是什么试用css3属性 box-sizing设置所有的盒子重边框开始计算宽度。
1.1.2 Input清除默认的样式
/*在移动端怎么清除默认的样式*/
/*在移动端清除浏览器默认样式*/
-webkit-appearance: none;
在移动设备的浏览器当中表单一般会有默认的属性 通过border:none
outline:none是无法完全清楚的,还是会有一些浏览器默认的属性,比如:
内阴影,立体感、、、向这些浏览器默认加上的样式我们怎么去除呢?
我们有一个属性 -webkit-appearance 这个属性指的是设置成 none
1.1.3 最小宽度和最大宽度的限制
max-width: 640px; /*在行业当中的移动端的设计图一般使用的是640px*/
如果设计稿是750px
min-width: 300px; /*在移动设备当中现在最小的尺寸320px*/
适用:图片比较多的首页,门户,电商 等。
作用 保证页面在尺寸比较大的设备当中保证页面的效果也就是清新度
保证页面在小尺寸的设备当中有较好的布局效果。
1.1.4 Img的下间隙问题
<div>
abcdefghijklmnopqrstuvwxyz
<img src="../images/nv-fy.jpg" alt=""/>
</div>
文字基线默认的 baseline 是以X的下边开始的
Img是行内块级元素 它也会有默认的基线对齐。那么和文字一样也会距离底部有一定的间隙。Font-size 0 对齐的方式
1.1.5 搜索按钮调用
<!--在移动端点击弹出输入法 enter键会显示搜索-->
<form action="#">
<input type="search" placeholder="提示"/>
</form>
在移动端调用输入法的时候会弹出小键盘,键盘一般是enter键,那么在搜索框当中我们要求调用是搜索按钮,那么这样的结构才能调用出来。
1.1 知识内容
1.1.1 Touch事件
touchstart:当手指触碰屏幕时候触发。
绑定事件的方法:
dom.addEventListener('touchstart',function(e){});
事件返回的e对象包含那些移动端特有的属性:
targetTouches 目标元素的所有当前触摸
changedTouches 页面上最新更改的所有触摸
touches 页面上的所有触摸
touchmove:当手指在屏幕上滑动时连续触发。
绑定事件的方法:
dom.addEventListener('touchmove',function(e){});
事件返回的e对象包含那些移动端特有的属性:
targetTouches 目标元素的所有当前触摸
changedTouches 页面上最新更改的所有触摸
touches 页面上的所有触摸
touchend:当手指离开屏幕时触发。
绑定事件的方法:
dom.addEventListener('touchend',function(e){});
事件返回的e对象包含那些移动端特有的属性:
changedTouches 页面上最新更改的所有触摸
touchcancel:系统停止跟踪触摸时候会触发。
这个事件不会经常使用,了解即可。
注意:在touchend事件的时候event只会记录changedtouches
clientX:触摸目标在视口中的X坐标。
clientY:触摸目标在视口中的Y坐标。
pageX:触摸目标在页面中的x坐标。
pageY:触摸目标在页面中的y坐标。
screenX:触摸目标在屏幕中的x坐标。
screenY:触摸目标在屏幕中的y坐标。
1.1.2 过渡和动画结束事件
transitionEnd 过渡结束后触发。
绑定事件的方法:
dom.addEventListener('webkitTransitionEnd',function(e){ });
dom.addEventListener('transitionEnd',function(e){ });
animationEnd 动画结束后触发。
绑定事件的方法:
dom.addEventListener('webkitAnimationEnd',function(e){ });
dom.addEventListener('animationEnd',function(e){ });
1.1.3 Gesture 事件(不常用)
gesturestart
当一个手指触摸屏幕之后,第二个手指再触摸屏幕时触发。
gesturechange
当上面的事件触发后立即触发。
gestureend
第二根手指离开屏幕时触发,之后将不会再次触发gesturechange。
在event当中会返回另外两个参数
scale 根据两个手指的滑动距离计算的缩放比例 初始1
rotation根据两个手指的滑动距离计算的旋转角度 初始 0
1.1.4 全屏单页面布局
试用百分比的方式:
/*满屏*/
html,body{
height: 100%;
}
移动web中一些问题处理与事件说明的更多相关文章
- [原创]java WEB学习笔记48:其他的Servlet 监听器:域对象中属性的变更的事件监听器 (3 个),感知 Session 绑定的事件监听器(2个)
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- 在C#代码中应用Log4Net(四)在Winform和Web中捕获全局异常
毕竟人不是神,谁写的程序都会有bug,有了bug不可怕,可怕的是出错了,你却不知道错误在哪里.所以我们需要将应用程序中抛出的所有异常都记录起来,不然出了错,找问题就能要了你的命.下面我们主要讨论的是如 ...
- Servlet实现asp.net中的Global.asax启动事件(Servlet和Listener使用)
1.Java Web中没有像asp.net的全局启动事件,但是可以通过web.xml中的load-on-startup节点来控制Servlet的开机启动和启动次数.web.xml详细配置参考:http ...
- (转)客户端触发Asp.net中服务端控件事件
第一章. Asp.net中服务端控件事件是如何触发的 Asp.net 中在客户端触发服务端事件分为两种情况: 一. WebControls中的Button 和HtmlControls中的Type为su ...
- HTML5 UI框架Kendo UI Web中如何创建自定义组件(二)
在前面的文章<HTML5 UI框架Kendo UI Web自定义组件(一)>中,对在Kendo UI Web中如何创建自定义组件作出了一些基础讲解,下面将继续前面的内容. 使用一个数据源 ...
- 在 SharePoint Server 2013 中配置建议和使用率事件类型
http://technet.microsoft.com/zh-cn/library/jj715889.aspx 适用于: SharePoint Server 2013 利用使用事件,您可以跟踪用户与 ...
- 在Web中实现C/S模式的Tab
在探讨C/S模式的Tab之前,我们先总结一下B/S模式的Tab通常是什么样的.web中常见的tab设计通常是用于分节展示大量信息以提高页面空间的利用率,而且这些信息通常是静态的,或者交互比较简单.通过 ...
- web中使用扫描枪
扫描枪实际上就是一输入设备,只不过它每次在输入的内容后面添加一个回车.因此在web中可以使用js监听回车事件.处理代码如下: jQuery(function() { jQuery(doc ...
- (92)Wangdao.com_第二十五天_线程机制_H5 Web Workers 分线程任务_事件 Event
浏览器内核 支撑浏览器运行的最核心的程序 IE 浏览器内核 Trident内核,也是俗称的IE内核Chrome 浏览器内核 统称为 Chromium 内核或 ...
随机推荐
- npm config
在公司为了不再用 npm --registry=http://r.cnpmjs.org install -(g) xxx 就设置了内部的镜像文件地址为默认的代理地址 npm config set re ...
- hihoCoder挑战赛25
萌新第一次打hihoCoder的比赛有点慌 T1 T1并不是特别难想到dp就好做了 显而易见的是一个01背包问题 Code: #include <cstdio> #include < ...
- PHP xml 转换为 array
retrun json_decode(json_encode(simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA)), tru ...
- ORBSLAM2与OPENCV3.1.0出错解决办法
用opencv3.1.0做ORBSLAM2运行一下命令时cd ORB_SLAM2 chmod +x build.sh ./build.sh出错:/usr/bin/ld: CMakeFiles/mono ...
- 转一个 Xcode 7 缺少 *.dylib库的解决方法
Xcode7中 Link Binary With Libraries 没有 .dylib库,只能找到对应的 .tbd,但不能代替使用,通过查找资料,尝试后得到以下两种解决方法. 方法1. (heqin ...
- 字符设备驱动之Led驱动学习记录
一.概述 Linux内核就是由各种驱动组成的,内核源码中大约有85%的各种渠道程序的代码.一般来说,编写Linux设备驱动大致流程如下: 1.查看原理图,数据手册,了解设备的操作方法. 2.在内核中找 ...
- Hibernate2
计应134(实验班) 杨伟 Hibernate 中提供了两级Cache(高速缓冲存储器),第一级别的缓存是Session级别的缓存,它是属于事务范围的缓存.这一级别的缓存由hibernate管理的,一 ...
- Tomcat配置错误导致Quartz执行两次问题
以下基于tomcat服务器 我们通常将域名映射到指定服务器的端口上,以通过域名直接访问服务,如http://www.abc.com域名已绑定到本机的80端口,项目名wechat,则直接访问http:/ ...
- int->string-------------c
void intToString(int n,char a[]){ int i=1,m=n; while((n/=10)!=0) i++; int j=0; for(;j<i;j++){ a ...
- kmod编译找不到函数kmod_log
编译报错: /usr/bin/ld: Warning: gc-sections option ignored libkmod/.libs/libkmod-util.a(libkmod-util.o): ...