目标: 前端开发移动端及H5时候,不须要再关心移动设备的大小,只须要按照固定 设计稿的px值布局javascript
dpr(设备像素比)css
css的像素px不等于设备像素/分辨率/各类值,css的px能够简单理解为虚拟 像素,与设备无关,css的px须要乘dpr计算为设备像素;html
几个移动端经常使用的单位rem、vw、vh,配合传统的px、百分比、标签 ,兼容适配移动端的各类分辨率的手机端。 单位简介前端
remvue
顾名思义,root emphasize,根元素(html)的font-sizejava
vwgit
屏幕宽度相关,1vw是屏幕宽度的1%github
vhvue-cli
屏幕高度相关,1vh是屏幕高度的1%npm
最近作移动端,用Vue结合lib-flexible和px2rem-loader作移动端的网页适配
Vue结合lib-flexible和px2rem-loader地址
将px转化为rem
npm install lib-flexible
// 在main.js中引入
import 'lib-flexible'
复制代码
在build/util.js
中
const px2remLoader = {
loader: 'px2rem-loader',
options: {
remUnit: 64 //设计稿宽度/10
}
}
// generate loader string to be used with extract text plugin
function generateLoaders (loader, loaderOptions) {
const loaders = options.usePostCSS ? [cssLoader, postcssLoader, px2remLoader] : [cssLoader, px2remLoader]
if (loader) {
loaders.push({
loader: loader + '-loader',
options: Object.assign({}, loaderOptions, {
sourceMap: options.sourceMap
})
})
}
复制代码