web前端开发总结(未完)

   因为我也是接触前端开发不久,因此呢,本身也会作点小功课,因而,我把前端可以用到的知识稍稍作了下总结,总结的不全面,之后会慢慢完善的!javascript

移动前端开发基础 (总结----待完善)
一、移动前端开发:简而言之就是对于移动设备所开发的应用,Android 、iPhone 是当今时代的主流系统,自从这两个手机操做系统的发布以来,Webapp(以WEB形式运行的应用程序,运行在高端的移动终端设备)便开始流行起来。
1>咱们都知道在高端智能手机系统中有两种应用程序:一种是基于本地操做系统运行的APP 也就是nativeapp,另外一种是基于高端机的浏览器运行的APP,也就是webapp。首先来看一下webapp和nativeapp的区别:
@、nativeapp(基于本地运行的app)
0一、开发成本很是大(它通常使用的语言为java、c++、等比较大型的开发软件)。
0二、更新体验较差,同时也是比较麻烦的(在发布新的版本的时候,都须要打包,这样会大量浪费时间、精力的,并且它是须要手动更新,这也是用户体验较差的的缘由之一)
0三、它除了有不足之处外,它仍是有一些优势的,好比: 它很是酷(由于nativeapp能够调用IOS中的UI控件的方法,从而能够实现一些webapp 没法实现的一些比较酷的交互效果)
0四、nativeapp它是被apple所承认的,(nativeapp它是被apple承认的一款可信任独立软件,能够放在Apple Store出售,可是webapp就不能够)
@、webapp(基于高端机的浏览器运行的app)
0一、开发成本低(使用web开发技术就能够轻松完成web app 的 开发)
0二、升级比较简单(升级不须要通知用户,在服务器端口更新文件就能够了)
0三、维护比较轻松(和通常的web同样,维护比较简单,它其实就是一个站点,)
说白了webapp就是针对Android和Iphone系统优化后的web站点,它所采用的技术通常都是html五、css三、javascript、服务端技术JAVA、PHP、ASP等。 css

2>在了解了nativeapp和webapp以后,那么HTML5和css3则是咱们学习的关键所在,首先来了解一下html5吧!
@、通常对于前端开发员来讲,仍是建议用html5来实现webapp的编写的,从而放弃那些版本较低的html4之类的,由于html5他能够实现一些html4没法实现的web应用程序,它能够减小开发者不少的工做量,减小对外部插件的需求(好比 Flash);在此以前必需要熟悉html5中的一些新标签的应用;
新添加的标签: 用于绘画的 canvas 标签
用于媒介回放的 video(视频) 和 audio(音频) 标签
新的特殊内容元素,好比 article、footer、header、nav、section
新的表单控件,好比 calendar、date、time、email、search
好比:定义一些文章内容的区域。能够建议使用section标签;
定义一些导航条和选项卡的时候可使用nav标签;
定义底部导航和底部板块的时候可使用footer标签;
定义内容的头部的时候,能够用header标签;html

@、在对于css3的使用中,有不少的属性值得咱们去学习,那么我就列举几个比较常见的属性;
好比:在css3的编写中,咱们尽可能要放弃使用float属性,能够直接使用display:block(块元素转换为行内元素);
在css3中咱们也应用了 animation(动画)这个属性;
animation-name ------动画的名称 ; 18:29 2014/10/30
animation-duration-----动画完成一个周期所花费的时间(秒或毫秒。默认是 0);
text-shadow 这个属性是添加阴影,它能够实现美化文字效果;
由于一些圆角按钮它会具备高光和内发光的效果,这样的效果在使用css3是没法写出来的,可是咱们能够利用-webkit-border-image来定义它的样式。
有些页面它会要求咱们用自适应的布局去排布,所以通常建议不要把它的宽度定义死,能够采用百分比的排布方式排列,或者是用em来代替px 的使用,这样就能够自适应一些ipad、iPod、iphone、Android、web safarik、chorme、这样的话也不用考虑一些屏幕的分辨率。前端

3>然而做为一名前端开发者,又想要在移动端上开发出本身的应用,那么对于WebKit内核浏览器也是必需要有必定的了解的,因此说它本身自己也是有本身的一些技巧的;我也总结了如下几点,就是平时常见的:
a.viewport
定义:相对于浏览器而言, 从字面定义它就是可视窗口、可视区域的意思,然而对于通常的浏览器咱们应该都知道它是什么?也就是除去全部的工具栏、状态栏、以及滚动条之外的咱们能够看得见的网页的区域;
相对于移动设备而言,由于移动设备的屏幕宽度它不一样于传统的web,所以咱们必需要改变viewport来实现,那么咱们操做viewport就有如下几个属性:
@、width ------viewport的宽度(它的屏幕范围为220px-10000px之间,通常来讲默认的宽度为980px)。
@、heigth ------viewport的高度(它的屏幕范围为223px-10000之间)。
@、minium-scale -----这是指用户所容许屏幕缩放到的最小比例。
@、maxium-scale -----这是指用户所容许屏幕缩放到的最大比例。
@、user-scalable ------这是指用户是否能够手动缩放屏幕(它通常会有两个值:yes / on)。
b.事件(event)在学习和了解移动端的时候,事件的学习是必不可少的,它在APP的实现中会起着很大的做用;它包含了不少的事件,那么下面我就列举一些咱们常见的、用的比较多的事件,来进行了解和学习。
a》手势事件(从字面上理解,它就是指手指触摸到屏幕所发生的事件)它包括如下几个事件:
@、touchstart------当手指接触到屏幕时出发的事件
@、touchmove-----当手指接触到屏幕的时候开始移动时出发的事件
@、touchend-------当手指离开屏幕时触发的事件
b》触摸事件(也就是从字面意义上理解,它就是和手势事件想似,也是手指触摸到屏幕所触发的事件)
@、gestureshart----当两个手指接触到屏幕时触发的事件
@、gesturechange----当两个手指接触到屏幕后开始移动时触发的事件
@、gestureend-----当两个手指离开屏幕时触发的事件
c》屏幕旋转事件(从字面的意思上理解,就是指当屏幕发生旋转的时候它所触发的事件);要知道在发生旋转时,它的状态有没有发生变化,即左旋、右旋、或者是没旋,首先呢,必须先要进行判断:在判断的过程当中咱们应用到了switch这个循环语句来进行;最后记得要添加 监听事件(addEventListener)。
d》touch事件,在了解了上述各类事件时,那么touch事件则相对而言就比较容易理解了,它通常是针对于视口的宽度和高度而言的,那么也就包含了如下几点属性:
@、clientX 和 clientY 相对于当前窗口的X/Y坐标
@、screenX和screenY 相对于当前屏幕的X/Y坐标
@、pageX和pageY 相对于父元素的X/Y坐标
那么对于学习和理解webapp还有好多的技巧和属性值得咱们去学习,而我总结的也只是它其中的一小部分而已。html5

总结的可能不太详细,可是我会继续加油的哦!嘻嘻!java