H5+CSS3移动端适配技术

html-css022

H5+CSS3移动端适配技术,第1张

近期因工作需求,做了一个Vue APP,过程中遇到了曾今经常听说,但从未真正接触过的移动端适配问题,中间遇到了很多挫折,经过了5天吧,这个小app经过来回重写样式好几遍,终于找到了门道,应该算是正路吧,我身边也没有真正做h5 app的伙伴,靠着自己百度、揣摩,外加朋友的帮助,学会了适配的方案。

解释

vw:屏幕可视宽度百分比

vh:屏幕可视高度百分比

vmin:屏幕可视宽度和高度中较小的那个,用这个单位,可以让字体在移动设备无论横屏还是竖屏都保持大小不变

vmax:屏幕可视宽度和高度中较大的那个,用处同上vmin

%:相对于父级元素的百分比尺寸

由于设备的高度会在不同的情况下受到影响,所以我们主要使用vw去控制各个元素的尺寸,因为设备的可视宽度正常情况下是不会有什么东东占用的,我没遇到过,所以设备的宽度就是可视宽度,那么宽度不变,我们使用vw去控制元素尺寸的时候,也就不会受到任何影响了,无论在什么情况下,都能保证元素的位置和尺寸不变了

而我们在适当的情况下需要使用%,因为vw、vh等都是设备的整个屏幕的可视宽高百分比,而有时候我们要的百分比是相对父级元素的,所以不要随便乱用,要想好再用

下面展示下把web app打包成apk全屏应用和在浏览器中浏览的效果

px 转 rem,还有写各种屏幕的不同样式的方案是过去的方案,当前主流使用CSS3的新特性单位,才最佳

⑴ 5做移动端开发有什么优势

HTML5的前景是非抄常好的,企袭业现在安卓、iOS开发人员都在学习HTML5混合开发,节约成本、一专多能是未来很多企业用人趋势!HTML5工程师在今后的工作中与Android、iOS工程师对接的几率非常大。混合式开发思想培训出来的学员比单一课程学员薪水高至少2000元,同时企业也更愿意去花更多的钱来聘请那些了解比较全面的开发人员!混合式开发讲师需要同时精通Android、iOS、HTML5等多门课程,这样才能在教学过程中融合混合式开发思想,让学员能够同时了解一些与本课程最相关的技术,为学员今后在工作中的对接和配合工作提供极大助力,对学员今后的职业发展也会有很大帮助。可以参加HTML5培训班的学习,拥有“混合式开发特聘讲师”这一大特色的,混合式开发课程对讲师的要求非常之高,至少同时具备3年或以上教学和技术经验的讲师才可以胜任,这是其他机构无法提供的!学习主要也是靠自己的,现在HTML5很火,前景未来5~10年内绝对好,好好学习拿高薪工作是没问题的。

⑵ 主流HTML5移动web开发框架

肯定使用框架啊,不然还原生 JS、自己写样式?

H5 做移动开发也分两种,一种就是正常的网版页,权一种是封装的成 App 在手机上跑的。下面我只大致介绍一下又哪些框架,具体的特性不是三两句能说完的,题主可以自行搜索相关资料。

后者比较知名的框架就是 PhoneGap、MUI 等等了。

而前者具体分的话还分 CSS 框架和 JS 框架。样式框架有很多了,常见的有 jQuery Mobile、Bootstrap、Kendo UI、Amaze UI 等等。JS 框架一般是 AngularJS、Backbone、ReactJS 等等,但说实话这些 JS 框架都比较繁重,一般是为比较复杂的场景设计的,如果你的页面需求很简单,那么大可以不用它们只用样式框架就好了。

值得一提的是国内 BAT 三大巨头也分别有自己的 H5 框架,并且都已经开源了,网络的是 GMU(Global Mobile UI)、Clouda+、EFE 这三个,阿里的是 Kissy Mobile,腾讯的是 Frozen UI。

⑶ 使用5开发移动端应用采用什么框架

随着使用智能手机的人越来越多,手机网站开发项目也成为一种潮流。可是您知道机网站开发框架有几种吗?

1. LungoJS

这个是被认为开发移动网站最好的HTML5开发框架,使用 HTML5/CSS3 和 JavaScript 技术。可帮助创建基于 iOS、 Android、 Blackberry 和 WebOS 平台的应用程序。该框架可利用当前移动设备的高级特性,可捕捉事件包括滑动、触屏、长按等。无需使用图片,全部采用向量声称。

Lungo.JS 无需服务器端支持,可帮助实现 HTML5 特性,包括 WebSQL、Geolocation、 History、 Device orientation 等等。这是一个完全可定制的框架,可用来创建应用、游戏等程序。

2.Kendo UI

Kendo UI是一个HTML5平台,开发者利用它可以开发新颖的、交互的移动应用程序和网站。该框架提供了大量的动画和丰富的拖拽功能、模板功能以及提供了将近10款客户端常用的数据绑定小部件,如图表、组合框以及常用表格。

3.Jo

该框架可以创建像本地一样的应用,并且兼容任何操作系统,无论是Blackberry、iOS还是Android。并且提供许多HTML5小部件。使用它可以解决任何动画设计方面的问题。

4.Sencha Touch

Sencha Touch是第一个基于HTML5的移动应用框架,利用JavaScript、HTML5和CSS3来构建移动应用程序,该框架利用本地代理存储离线数据,具体使用HTML5来渲染视频和音频组件。

可以让你的Web App看起来就像本地应用程序一样。美丽的用户界面组件和丰富的数据管理,全部基于最新的HTML5和CSS3的Web标准,全面兼容Android和Apple iOS设备。

5.52 Framework

52 Framework拥有16列的网格模板。该框架来自于CSS3样式里的新“Selection”、阴影、圆角以及有效的HTML5标记。该框架还提供了一些特殊的脚本和样式用于IE6。

6.LimeJS

LimeJS 是一个 JavaScript 游戏开发框架,用于快速构建运行于触屏设备和桌面浏览器的游戏。允许开发者创建基于 HTML5 的游戏,支持主流浏览器包括iOS。

7. G5 Framework

如果你想要快速实现Web开发,并且想要重用ant主题或应用程序或网站项目,那么G5 框架是您最好的选择,因为该框架旨在提升开发效率、减少代码。该框架采用特色的PHP激活类、SEO优化技术。除了G5自身所带的这些功能特性外,它还集成其他许多功能,例如Orbit Slider、CSS3 PIE、Reveal Modals、CSS3 Buttons和Tipsy Tooltips等。

8.jQuery Mobile

jQuery Mobile(jQueryMobile)是 jQuery在手机上和平板设备上的版本。jQuery Mobile 不仅会给主流移动平台带来jQuery核心库,而且会发布一个完整统一的jQuery移动UI框架。支持全球主流的移动平台。jQuery Mobile开发团队说:能开发这个项目,我们非常兴奋。移动Web太需要一个跨浏览器的框架,让开发人员开发出真正的移动Web网站。我们将尽全力去满足这样的需求。

9.Phone Gap

PhoneGap是一个开源的开发框架,使用HTML,CSS和JavaScript来构建跨平台的的移动应用程序。它使开发者能够利用iPhone,Android,Palm,Symbian,Blackberry,Windows Phone和Beda智能手机的核心功能——包括地理定位,加速器,联系人,声音和振动等。

⑷ HTML5移动前端webapp有什么推荐的书籍或者建议

《响应式Web设计—HTML5和CSS3实战》

封面是一只瓢虫,这本其实响应式的东西讲得比较少,大半内容是内关于介绍h5和css3的基础知识,全书主要是带领读者做一个小网页来写的,适合新手入门,如果同时想了解h5和css3和响应式设容计入门,这本还不错

《响应式web设计实践》

《跨终端web》

《5触摸界面开发与设计》

⑸ 5移动端网页开发和pc端的区别

pc端目前仅使用5部分功能做渐进增强,移动端针对智能机开发则可以完全迁移到内5上来,容低端java手机使用wap技术开发。明确一个概念,5 = 新版标记语言 + css3 + 脚本API;但从标记语言来比较5 和 4之间的差别: 1 更加语意

⑹ 5怎样做移动端开发

随着互联网的高速发展,软件行业更加火爆,几乎高薪职位都与软件行业挂勾,回程序员成了高薪的标志。答HTML5作为近几年非常火的软件开发语言,更是得到了多人一致的好评和青睐。既然HTML5这么火,学习这门课程当然前景更可观。

只要努力学到真东西,前途自然不会差。如果你想学好HTML5开发语言,一般在2w左右,应该根据自己的实际需求去实地看一下,先去试听之后,再选择比较适合自己的,希望能给你带去帮助。

⑺ 5混合app开发需要掌握哪些技术

HTML5开发就业班:

全栈:HTML5 + PHP + MySQL

第一阶段:前端页面重构:PC端网站布局、HTML5+CSS3基础项目、WebAPP页面布局;

第二阶段:JavaScript高级程序设计:原生JavaScript交互功能开发、面向对象开发与ES5/ES6、JavaScript工具库自主研发;

第三阶段:PC端全栈项目开发:jQuery经典特效交互开发、HTTP协议,Ajxa进阶与后端开发、前端工程化与模块化应用、PC端网站开发、PC端管理信息系统前端开发;

第四阶段:移动端项目开发:Touch端项目、微信场景项目、应用Vue.js开发WebApp项目、应用Ionic开发WebApp项目、应用React.js开发WebApp;

第五阶段:混合(Hybrid)开发:各类混合应用开发;

第六阶段:NodeJS全栈开发:WebApp后端系统开发。

HTML5开发好程序:

不会原生开发(iOS、Android),后端应用(NodeJs、Java、PHP)开发,游戏开发的HTML5工程师不是一个好的工程师。

全栈工程师:

大前端:HTML5(Web前端)、Android(Native前端)、Hybrid(混合前端)。

后端:多栖后端(NodeJs、Java、PHP)。

第一阶段:前端页面重构:PC端网站布局、HTML5+CSS3基础项目、WebAPP页面布局;

第二阶段:JavaScript高级程序设计:原生JavaScript交互功能开发、面向对象开发与ES5/ES6、JavaScript工具库自主研发;

第三阶段:PC端全栈项目开发:jQuery经典特效交互开发、HTTP协议,Ajxa进阶与后端开发、前端工程化与模块化应用、PC端网站开发、PC端管理信息系统前端开发;

第四阶段:移动端项目开发:Touch端项目、微信场景项目、应用Vue.js开发WebApp项目、应用Ionic开发WebApp项目、应用React.js开发WebApp;

第五阶段:混合(Hybrid)开发:各类混合应用开发;

第六阶段:NodeJS全栈开发:WebApp后端系统开发、基于Socket.io聊天系统开发。

第七阶段:游戏开发:游戏类项目开发(植物大战僵尸、捕鱼达人等)。

第八阶段:Java开发:企业级开发技术架构实战、商城项目整站开发。

第九阶段:PHP开发:微信管理系统、商城系统、主流PHP免费系统的使用。

第十节段:Android开发:外卖系统开发、Android混合开发项目。

H5web页中由于项目需求,需要实现一个长按弹出自定义菜单供用户选择操作的功能,此功能可用jQuery的

touchstart,touchmove,touchend三个触碰事件外加时间器实现,这里就不多说了.

研究css3得出只需在需要禁止的页面中加入如下cssy样式定义

body {

-webkit-touch-callout:none/*系统默认菜单被禁用*/

-webkit-user-select:none/*webkit浏览器*/

-khtml-user-select:none/*早起浏览器*/

-moz-user-select:none/*火狐浏览器*/

-ms-user-select:none/*IE浏览器*/

user-select:none/*用户是否能够选中文本*/

}

此段css样式加入后能解决ios下手机浏览器,微信浏览器长按出现选择系统菜单问题,但是对于Android下微信浏览器还会出现不兼容问题

需在禁用页面加入一段js事件处理如下:

document.oncontextmenu=function(e){

    e.preventDefault()

}

oncontextmenu 事件在元素中用户右击鼠标时触发并打开上下文菜单。此处用于阻止菜单的出现.