其实H5适配的方案有很多种,网上有关于这方面的教程也非常的多. 不管哪种方法,都有其自己的优势和劣势. 为什么推荐使用Flexible库来做H5页面的终端设备适配呢?   原理  简单易懂  源码疑问 主要因为这个库在手淘已经使用了近一年,而且已达到了较为稳定的状态. 除此之外,你不需要考虑如何对元素进行折算,可以根据对应的视觉稿,直接切入. 该方案 会 自动根据你的屏幕大小配置好 根节点的 font-size 大小 另外会改变 initial-scale , 如果是3倍retina屏, 值变成…
设备像素比 = 物理像素 / 逻辑像素 1.物理像素 显示器上最小的物理显示单元(像素颗粒),在操作系统的调度下,每一个设备像素都有自己的颜色值和亮度值. 例如:手机大小固定,物理像素越高,画面越清晰细腻. 2.逻辑像素 可以认为是计算机坐标系统中得一个点,这个点代表一个可以由程序使用的虚拟像素,也可称为设备独立像素,密度无关像素. 例如:设计图的大小是多少px 3.举个栗子 iPhone6的设备宽度是375px,但是它一行有750个像素颗粒,dpr就是2. 物理像素   逻辑像素 以上部分内容…
一些重要的名词解释: CSS pixels(CSS 像素):详见http://www.w3.org/TR/css3-values/#reference-pixe CSS声明的像素值,可随着放大缩小而放大缩小. Device pixels(设备 像素): Layout viewport(布局视口)设计像素值固定,对web开发者来说基本没有用. HTML元素初始视口区域,css中声明宽度的20%等都是按照这个视口来计算. Visual viewport (设备视口) 屏幕视口,通过这个视口能看到页面…
移动端高清.多屏适配方案 背景 开发移动端H5页面 面对不同分辨率的手机 面对不同屏幕尺寸的手机 视觉稿 在前端开发之前,视觉MM会给我们一个psd文件,称之为视觉稿. 对于移动端开发而言,为了做到页面高清的效果,视觉稿的规范往往会遵循以下两点: 首先,选取一款手机的屏幕宽高作为基准(以前是iphone4的320×480,现在更多的是iphone6的375×667). 对于retina屏幕(如: dpr=2),为了达到高清效果,视觉稿的画布大小会是基准的2倍,也就是说像素点个数是原来的4倍(对i…
做移动端自适应时可能很多人都对自适应和dpr之间的关系产生疑问,也有一些人会疑虑比如我的自适应方案没有加dpr会不会出问题,针对这些疑问我说一下我的见解. 1. 什么是尺寸自适应 首先标题说的自适应,可能自适应在不同人眼里理解不同,特别与响应式的关系,在这里说一下我所理解的自适应,和其与响应式的区别.先说响应式设计,响应式设计表示在不同的屏幕尺寸下,都有良好的布局和内容表现,简单一点的说,就是一个页面可以适配多种不同尺寸的屏幕,而且看上去还是设计良好的.为了实现这个目的,可能会利用js或者css…
前言 在移动端做自适应,我们常用的有媒体查询,rem ,em,宽度百分比这几种方案.但是都各有其缺点. 首先拿媒体查询来说,在某一个宽度区间内只能使用一种样式,为了适应不同屏幕要,css的代码量就会增多,并且后期页面如果有改动,会变得越来越不易维护.em得根据父元素的字体大小来计算宽高,有很大局限性.用百分比来设置宽度局限性也大,首先是得计算每个元素占父元素的宽度,而且只能设置宽度的百分比,而高度则很难通过百分比来设置.所以最后的希望寄托在了rem上. rem与px 在讲rem实现方案之前,我们…
总结用vue+vue-cli+淘宝lib-flexible做移动端自适应方案: 1.安装淘宝lib-flexible npm install lib-flexible --save 2.在入口文价main.js中引用flexible import 'lib-flexible' 3.由于在开发中rem和px手动转换比较麻烦,所以建议安装px2rem这个工具 3.1安装px2rem工具 npm install px2rem-loader --save-dev 3.2在vue-cli生成的文件中,找到…
自从进入新公司之后,就一直采用800的方案,也就是判断屏幕尺寸,大于800px是一种html字体处理方案,另一种方案是小于800px的html字体处理方案, 代码如下: (function(doc, win) { var docEl = doc.documentElement, resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize', recalc = function() { var clientWi…
一般设计师给我们的设计稿尺寸都为750*1340 .. 网易,淘宝移动端首页上html元素的font-size 目前就先说一下网易的做法 引入下面这段js,用于计算动态的font-size (function(doc, win) { var docEl = doc.documentElement, isIOS = navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), dpr = isIOS ? Math.min(win.devic…
从博主学习前端一路过来的经历了解到,前端移动开发是大部分从PC端转战移动端的小伙伴都非常头疼的一个问题,这边博主就根据一篇自己看过的移动开发文章来剖析一下网易和淘宝的rem解决方案,希望能够帮助到一些从PC端转战web移动开发的小伙伴,因为是第一次写博文,写得不好的地方也希望大家多多包涵啦(*^__^*) 嘻嘻--(pc:文章有点长,如果你现在时间紧迫,那可以先收藏,等到有时间了再回头慢慢品尝喔) 首先我们一起看看这篇打通博主web移动开发任督二脉的武功秘籍吧: 从网易与淘宝的font-size…