基於vue-cli配置移動端rem自適應專案
依賴
專案基礎配置使用 vue-cli 生成
移動端自適應方案核心:阿里可伸縮佈局方案 - lib-flexible
px 轉 rem:px2rem,它有 webpack 的 loader:px2rem-loader
使用
首先,我們使用 vue 的腳手架 vue-cli 來初始化一個 webpack 專案
沒有安裝過 vue-cli 的請先安裝 vue-cli
1. 安裝所需依賴後安裝 lib-flexible 和 px2rem-loader
npm i lib-flexible -S
npm i px2rem-loader -D
2. 找到 build/utils.js
在 cssLoader 後再加上一個 px2remLoader 即可,px2rem-loader 的 remUnit 選項意思是 1rem=多少畫素,結合 lib-flexible 的方案,我們將 px2remLoader 的 options.remUnit 設定成設計稿寬度的 1/10,這裡我們假設設計稿寬為 750px
// utils.js
const cssLoader = {
loader: 'css-loader',
options: {
minimize: process.env.NODE_ENV === 'production',
sourceMap: options.sourceMap
}
}
const px2remLoader = {
loader: 'px2rem-loader',
options: {
remUnit: 75 //設計稿寬度/10
}
}
// ...
並放進 loaders 陣列中
// utils.js
function generateLoaders(loader, loaderOptions) {
const loaders = [cssLoader, px2remLoader]
// ...
3. 在專案入口檔案 main.js 裡 引入 lib-flexible
// main.js
import 'lib-flexible'
修改配置後 npm run dev,然後我們就可以在.vue 裡直接用px,這樣寫起來就舒服多了。
關於字型大小
不推薦用rem作為單位, lib-flexible會在html(也就是document.documentElement)上增加一個data-dpr屬性,所以對於字型的設定,仍舊使用px作為單位,並配合用data-dpr屬性來區分不同dpr下的的大小。
例如:
div {
width: 1rem;
height: 0.4rem;
font-size: 12px; // 預設寫上dpr為1的fontSize
}
[data-dpr="2"] div {
font-size: 24px;
}
[data-dpr="3"] div {
font-size: 36px;
}
至此,我們就建立了一個移動端自適應的專案。
相關文章
- rem移動端適配REM
- 移動端適配-rem(新)REM
- 移動端rem怎樣適配REM
- vue-cli中使用rem完成適配,讓移動端快樂起來~~VueREM
- 移動端配適與掌握動態 REMREM
- 移動 web 端螢幕適配 – remWebREM
- 移動端適配-Rem 佈局篇REM
- react+flexible適配移動端專案的配置ReactFlex
- (移動端適配px轉rem)react配置rem外掛lib-flexible和postcss-px2rem-excludeREMReactFlexCSS
- 關於移動端rem的設定REM
- 前端移動端自適應方案【筆記】前端筆記
- Web移動端 自適應縮放介面Web
- 基於Vue-Cli 打包自動生成/抽離相關配置檔案Vue
- vue移動端專案使用第三方ui框架適配rem的問題VueUI框架REM
- React專案使用vw適配移動端React
- 移動端第十八章 rem適配佈局REM
- 移動端使用rem原理REM
- 淘寶、網易移動端 px 轉換 rem 原理,Vue-cli 實現 px 轉換 remREMVue
- 移動端web自適應適配佈局解決方案Web
- 最簡單的移動端適配方案(rem+vw)REM
- 移動端法門:自適應方案和高清方案
- H5 - rem自適應方案H5REM
- 面試官 | 說說移動端專案適配面試
- rem, vw, 還是...? 各憑本事的移動端適配方案REM
- vue移動端h5適配解決方案(rem or vw)VueH5REM
- Web移動端頁面 –響應式和動態REMWebREM
- 基於react/vue的移動端終極適配方案(更新css-modules配置)ReactVueCSS
- lib-flexible 實現移動端自適應佈局Flex
- HTML5 移動端自適應方案與踩坑HTML
- rem自適應解決方案·px2rem-loader&hotcssREMCSS
- 用REM單位進行移動端適配的最佳實現REM
- H5移動端使用rem適配(外掛postcss-pxtorem)H5REMCSS
- 移動端:對高度自適應的輸入框說不~
- 今天分享下移動端rem 適配REM
- vue移動端專案接入vconsole(移動端除錯)Vue除錯
- 基於DotNetty實現自動釋出 - 專案的配置與發現Netty
- 最簡單的移動端適配方案(rem+vw)--沒有之一REM
- 移動端適配