一:項(xiàng)目中引入lib-flexible
(1)項(xiàng)目中安裝lib-flexible
```
npm? ?install? ? lib-flexible? --save
```
(2)項(xiàng)目入口文件main.js中引入lib-flexible
```
import? ?'lib-flexible'
```
刪除項(xiàng)目根目錄下的index.html的meta標(biāo)簽笑诅,因?yàn)閘ib-flexible會(huì)自動(dòng)在html的head中添加meta。同時(shí)自動(dòng)設(shè)置html的font-size為屏幕寬度除以10,也就是說(shuō)? 1rem = 屏幕寬度/10嘲玫。比如我們的設(shè)計(jì)稿是750px缴川,1rem = 75px劳曹。假如某個(gè)元素是200px歼捐,那么我們?cè)赾ss里寫這個(gè)元素寬度就是200/75=2.67rem跃洛,后邊其他元素設(shè)置的寬度都是? 設(shè)計(jì)圖元素寬度/75? ? rem轨蛤。這樣很難計(jì)算啼器,開發(fā)效率也低,我們可以使用px2rem-loader自動(dòng)將css中的px轉(zhuǎn)成rem俱萍,有了px2rem-loader我們可以在css中直接寫設(shè)計(jì)圖中的px值端壳,由這個(gè)插件將px轉(zhuǎn)成rem單位進(jìn)行適配
二: 安裝px2rem-loader
```
npm install? px2rem-loader? --save-dev
```
(1)修改build/utils.js,在exports.cssLoaders中添加如下代碼:
```
const px2remLoader = {
? ? loader: 'px2rem-loader',
? ? options: {
? ? ? remUnit: 37.5? ? //設(shè)計(jì)稿的1/10
? ? }
? }
```
(2)修改generateLoaders方法中的 const loaders 一行
將const loaders = options.usePostCSS ? [cssLoader, postcssLoader] : [cssLoader]
改為:
```
const loaders = options.usePostCSS ? [cssLoader, postcssLoader, px2remLoader] : [cssLoader, px2remLoader]
```
設(shè)置完重啟項(xiàng)目即可枪蘑。
注意:px2rem-loader只能自動(dòng)轉(zhuǎn)化css中的px值损谦,js中想要設(shè)置寬高進(jìn)行適配話岖免,就需要我們自己手動(dòng)計(jì)算出rem值
font-size:28px;/*px*/則不會(huì)被轉(zhuǎn)換