vw/vh這個單位可以根據電腦瀏覽器自適應
vw —— 視口寬度的 1/100;vh —— 視口高度的 1/100 —— MDN
在pc端,視口寬高就是瀏覽器得寬高;
在項目中引入插件
npm install postcss-import postcss-loader postcss-px-to-viewport --save-dev
npm i postcss-px-to-viewport-opt
然後在根目錄下面創建postcss.config.js
module.exports = {
plugins: {
"autoprefixer": {
path: ['./src/*']
},
"postcss-import": {},
"postcss-px-to-viewport-opt": {
"viewportWidth": "1920", //視窗的寬度,對應的是我們設計稿的寬度
"viewportHeight": "1080", // 視窗的高度
"unitPrecision": 2, //指定`px`轉換爲視窗單位值的小數位數(很多時候無法整除)
"viewportUnit": "vw", //指定需要轉換成的視窗單位,建議使用vw
"selectorBlackList": ['#nprogress'], //指定不轉換爲視窗單位的類
"minPixelValue": 1, // 小於或等於`1px`不轉換爲視窗單位
"mediaQuery": false, // 允許在媒體查詢中轉換`px`
// "exclude": /(\/|\\)(node_modules)(\/|\\)/
},
}
};
然後重啓項目
之後就可以在頁面中寫
.icon{
color: $defaultColor;
font-size: 26px;
}
實際上編譯之後的效果是這樣的
這樣就避免了再不用寬度的瀏覽器頁面顯示的字體大小問題了