從零開始在vue-cli4配置自適應vw布局的實現
簡介
viewportWidth也是vw布局從配置上來說比rem布局簡潔了很多,bu需要配置安裝lib,也不需要增加一個rem.js文件
簡稱拎包使用
安裝包
npm install postcss-px-to-viewport -D
或者
yarn add postcss-px-to-viewport -D
配置移動端
在vue.config.js中找到loaderOptions,如果沒有的話需要在css屬性下增加postcss
css: {
extract: IS_PROD,
sourceMap: false,
loaderOptions: {
postcss: {
plugins: [
require("postcss-px-to-viewport")({
unitToConvert: "px", // 需要轉換的單位,默認為"px"
viewportWidth: 375, // 視窗的寬度,對應移動端設計稿的寬度,一般是375
// viewportHeight:667,// 視窗的高度,對應的是我們設計稿的高度
unitPrecision: 3, // 單位轉換后保留的精度
propList: [ // 能轉化為vw的屬性列表
"*"
],
viewportUnit: "vw", // 希望使用的視口單位
fontViewportUnit: "vw", // 字體使用的視口單位
selectorBlackList: [], // 需要忽略的CSS選擇器,不會轉為視口單位,使用原有的px等單位。
minPixelValue: 1, // 設置最小的轉換數值,如果為1的話,只有大于1的值會被轉換
mediaQuery: false, // 媒體查詢里的單位是否需要轉換單位
replace: true, // 是否直接更換屬性值,而不添加備用屬性
exclude: /(\/|\\)(node_modules)(\/|\\)/, // 忽略某些文件夾下的文件或特定文件,例如 'node_modules' 下的文件
})
]
}
}
},
效果
不同型號下,我們看到字體大小都會跟著改變
配置pc端
css: {
extract: IS_PROD,
sourceMap: false,
loaderOptions: {
postcss: {
plugins: [
require("postcss-px-to-viewport")({
unitToConvert: "px", // 需要轉換的單位,默認為"px"
viewportWidth: 1920, // 視窗的寬度,對應pc設計稿的寬度,一般是1920
// viewportHeight: 1080,// 視窗的高度,對應的是我們設計稿的高度
unitPrecision: 3, // 單位轉換后保留的精度
propList: [ // 能轉化為vw的屬性列表
"*"
],
viewportUnit: "vw", // 希望使用的視口單位
fontViewportUnit: "vw", // 字體使用的視口單位
selectorBlackList: [], // 需要忽略的CSS選擇器,不會轉為視口單位,使用原有的px等單位。
minPixelValue: 1, // 設置最小的轉換數值,如果為1的話,只有大于1的值會被轉換
mediaQuery: false, // 媒體查詢里的單位是否需要轉換單位
replace: true, // 是否直接更換屬性值,而不添加備用屬性
exclude: /(\/|\\)(node_modules)(\/|\\)/, // 忽略某些文件夾下的文件或特定文件,例如 'node_modules' 下的文件
})
]
}
}
},
效果
我們以字體為例,同樣可以看到字體在不同分辨率的情況下是不一樣大小的

參考資料
vue-cli 中使用 postcss-px-to-viewport 插件實現移動端自適應
Vue(vue4.0)項目中,使用響應式布局插件postcss-px-to-viewport
到此這篇關于從零開始在vue-cli4配置自適應vw布局的文章就介紹到這了,更多相關從零開始在vue-cli4配置自適應vw布局內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
laravel-admin 與 vue 結合使用實例代碼詳解
由于 Laravel-admin 采用的是 pjax 的方式刷新頁面,意味著很多頁面刷新的操作,這篇文章主要介紹了laravel-admin 與 vue 結合使用,需要的朋友可以參考下2019-06-06
Vue中@change、@input和@blur的區(qū)別及@keyup介紹
這篇文章主要給大家介紹了關于Vue中@change、@input和@blur的區(qū)別及@keyup介紹的相關資料,文中通過實例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2023-02-02
Vue中this.$nextTick()方法的使用及代碼示例
$nextTick()是Vue.js框架中的一個方法,它主要用于DOM操作,當我們修改Vue組件中的數據時,Vue.js會在下次事件循環(huán)前自動更新視圖,并異步執(zhí)行$nextTick()中的回調函數,本文主要介紹了Vue中this.$nextTick()方法的使用及代碼示例,需要的朋友可以參考下2023-05-05

