vue中自動(dòng)px轉(zhuǎn)為rem

使用lib-flexible實(shí)現(xiàn)移動(dòng)端適配

1.安裝lib-flexible

npm install lib-flexible --save

2.在項(xiàng)目的入口main.js文件中引入lib-flexible

import 'lib-flexible'

lib-flexible會(huì)自動(dòng)在html的head中添加一個(gè)meta name="viewport"的標(biāo)簽,同時(shí)會(huì)自動(dòng)設(shè)置html的font-size為屏幕寬度除以10,也就是1rem等于html根節(jié)點(diǎn)的font-size。假如設(shè)計(jì)稿的寬度是750px,此時(shí)1rem應(yīng)該等于75px。假如量的某個(gè)元素的寬度是150px,那么在css里面定義這個(gè)元素的寬度就是 width: 2rem

注意:
1.檢查一下html文件的head中,如果有 meta name="viewport"標(biāo)簽,需要將他注釋掉,因?yàn)槿绻羞@個(gè)標(biāo)簽的話,lib-flexible就會(huì)默認(rèn)使用這個(gè)標(biāo)簽。而我們要使用lib-flexible自己生成的 meta name="viewport"來(lái)達(dá)到高清適配的效果。
2.因?yàn)閔tml的font-size是根據(jù)屏幕寬度除以10計(jì)算出來(lái)的,所以我們需要設(shè)置頁(yè)面的最大寬度是10rem。

使用postcss-px2rem-exclude自動(dòng)將css中的px轉(zhuǎn)成rem

如果每次從設(shè)計(jì)稿量出來(lái)的尺寸都手動(dòng)去計(jì)算一下rem,會(huì)導(dǎo)致效率比較慢,還有可能會(huì)計(jì)算錯(cuò)誤,所以我們可以使用postcss-px2rem-exclude自動(dòng)將css中的px轉(zhuǎn)成rem

1.安裝postcss-px2rem-exclude

npm install postcss-px2rem-exclude -D

2.配置 postcss-px2rem-exclude

在項(xiàng)目的根目錄下找到文件postcss.config.js,如果沒(méi)有,新建個(gè),在里面添加如下代碼

module.exports = {
  plugins: {
    autoprefixer: {},
    "postcss-px2rem-exclude": {
      remUnit: 75,
      exclude: /node_modules|floder_name/i    //忽略node_modules目錄下的文件
    }
  }
};

注意:
1.此方法只能將.vue文件style標(biāo)簽中的px轉(zhuǎn)成rem,不能將script標(biāo)簽和元素style里面定義的px轉(zhuǎn)成rem
2.如果在.vue文件style中的某一行代碼不希望被轉(zhuǎn)成rem,只要在后面寫上注釋 /* no*/

最后重啟項(xiàng)目就可以看到px自動(dòng)轉(zhuǎn)為rem了

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容