<!--强制使用webkit内核进行渲染-->
<meta http-equiv="X-UA-COMPATIBLE" content="IE=edge, chrome=1"/>

<!--移动端视口控制-->
<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum- 
scale=1,maximum-scale=1,user-scalable=no">

<!--把数字默认显示拨号链接去掉-->
<meta name="format-detection" content="telephone=no"/>

设计开发流程
切图、重构、前端的知识、灵活
多页视觉放到一个网页文档,采取视觉差特效完成分页展示
音乐不跟随翻页,位置固定,播放旋转,可暂停

移动端项目:
结构层:HTML5
表现层:CSS3
特效:采用CSS3完成主要特效,采用JavaScript控制交互

背景音乐直接采取JavaScript控制Audio的API进行控制

可以直接采用原生态的JavaScript控制CSS3实现翻页效果,放弃前端框架和类库

性能优化分析:
项目为移动端项目,尽可能简化结构层标签
尽可能少用图片,尽量直接使用CSS3控制标签完成图片效果
尽可能减小文件大小,压缩图片到无损最小值
减少服务器请求次数,用原生态JavaScript代替Zepto等前端框架

切图->重构->前端->优化

CSS3长度单位 vw、vh(移动端自适应)

 h1 {font-size: 8vw;}

(vw这个数值*当前视口的宽度)/100 = h1元素的字号 /*元素的字号单位是mm*/
vw这个数值 = (h1元素的字号*100)/当前视口的宽度

 div{
position: absolute; /*相对于父级元素position:fixed;*/
/*相对于父级元素居中*/
top:;
right:;
bottom:;
left:;
margin: auto;
}
 /* 不写这两个通配符默认高度把其撑开,写了就占页面的全部高度 */
html,
body {
height: 100%;
} div {
width: 45vw;
height: 71.2vh;
font-size: 3.506rem;
}

翻页有一个淡入淡出的动画效果

关于rem单位:

rem IE6-8不支持,不考虑低版本ie的兼容,rem是相对于根元素<html>的,html如果没有设置,默认是16px。

 html{font-size:10px;}
body{font-size:1.2rem;/*相对于html,其实是12px*/}
h1{font-size:1.6rem;}

一开始初始化的时候写在html上就好了,body统一设置相对于html(root)

H5手机页面剖析的更多相关文章

  1. h5手机页面禁止缩放

    <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable= ...

  2. h5手机页面注册处理(短信验证)

    //获取验证码 var wait = 60; function time(o) { if(wait == 0) { o.removeAttribute("disabled"); o ...

  3. h5微信页面在手机微信端和微信web开发者工具中都能正常显示,但是在pc端微信浏览器上打不开(显示空白)

    h5微信页面在手机微信和微信开发者工具中都能正常显示,但是在pc端微信浏览器上打不开或者数据加载不出来. 原因:pc端微信浏览器不支持ES6语法,我的代码中使用了一些ES6的特性 解决:将ES6转换为 ...

  4. H5单页面手势滑屏切换原理

    H5单页面手势滑屏切换是采用HTML5 触摸事件(Touch) 和 CSS3动画(Transform,Transition)来实现的,效果图如下所示,本文简单说一下其实现原理和主要思路. 1.实现原理 ...

  5. h5空白页面过渡加载

    h5空白页面过渡加载 页面第一部分内容是图片,考虑到手机图片加载慢,想用简单.转化为base64的图片过渡 开始尝试将图片转为灰度图片,结果还是很大. 后来选取重要元素,保存2位的png,尺寸是494 ...

  6. 【转帖】H5 手机 App 开发入门:概念篇

    H5 手机 App 开发入门:概念篇 http://www.ruanyifeng.com/blog/2019/12/hybrid-app-concepts.html 作者: 阮一峰 日期: 2019年 ...

  7. [转帖]H5 手机 App 开发入门:技术篇

    H5 手机 App 开发入门:技术篇   http://www.ruanyifeng.com/blog/2019/12/mobile-app-technology-stack.html 阮一峰老师的文 ...

  8. 快速构建H5单页面切换骨架

    在Web App和Hybrid App横行的时代,为了拥有更好的用户体验,单页面应用顺势而生,单页面应用简称`SPA`,即Single Page Application,就是只有一个HTML页面的应用 ...

  9. 利用简洁的图片预加载组件提升h5移动页面的用户体验

    在做h5移动页面,相信大家一定碰到过页面已经打开,但是里面的图片还未加载出来的情况,这种问题虽然不影响页面的功能,但是不利于用户体验.抛开网速的原因,解决这个问题有多方面的思路:最基本的,要从http ...

随机推荐

  1. 微信发送模版消息,PHP代码简单案例

    function http_request($url,$data=array()){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); c ...

  2. redis原理及实现

    1 什么是redis redis是nosql(也是个巨大的map) 单线程,但是可处理1秒10w的并发(数据都在内存中) 使用java对redis进行操作类似jdbc接口标准对mysql,有各类实现他 ...

  3. C#实现,一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第35位数是多少, 用递归算法实现

    方法函数可以通过调用自身来进行递归.计算理论可以证明递归的作用可以完全取代循环. static void Main(string[] args) { Console.WriteLine(Ra()); ...

  4. mac 配置charles

    从官网下载链接http://www.charlesproxy.com/download 附上注册码: Registered Name: https://zhile.io License Key: 48 ...

  5. Request processing failed; nested exception is org.apache.ibatis.binding.BindingException: Invalid bound statement

    原因: 此异常的原因是由于mapper接口编译后在同一个目录下没有找到mapper映射文件而出现的.由于maven工程在默认情况下src/main/java目录下的mapper文件是不发布到targe ...

  6. python学习之路---day21--模块和栈

    模块和栈 一:计数模块collections 基础版本: s="qwewsfdfjiehrfqweqweqwqewq" dic={} for el in s: dic[el]=di ...

  7. R语言结果输出方法

    输出函数:cat,sink,writeLines,write.table 根据输出的方向分为输出到屏幕和输出到文件. 1.cat函数即能输出到屏幕,也能输出到文件. 使用方式:cat(... , fi ...

  8. C# B站的弹幕提取

    要知道B站的弹幕位置 如果只考虑视频,B站的链接格式为:https://www.bilibili.com/video/av34042815.把av后面的数字看做是唯一标记即可. 既然能够把弹幕加载出来 ...

  9. 小a与“204”------数列、排序

    链接:https://ac.nowcoder.com/acm/contest/317/B来源:牛客网 小a非常喜欢204204这个数字,因为′a′+′k′=204′a′+′k′=204. 现在他有一个 ...

  10. Spark遇到的报错和坑

    1. Java版本不一致,导致启动报错. # 解决方法: 在启动脚本最前边添加系统参数,指定Java版本 export JAVA_HOME=/usr/java/jdk1..0_181-amd64/jr ...