vue cli3项目的pc自适应布局_vw

摘要:
MinPixelValue:1,//设置最小转换值。如果为1,则仅转换大于1的值。mediaQuery:false,//是否需要替换媒体查询中的单元:true,//是否直接替换属性值而不添加备用属性exclude://(/|)(/|)/,//忽略某些文件夹中的文件或特定文件,如“node_Modules”file})]}}testdididididid2Didid3exportdefault{data(){return{}},components:{}div{font-size:50px;}启动npmrunserve以查看更改窗口大小时的字体更改

前言

vw布局的页面是等比改变的,比如我们在一个750px的屏幕宽度中使用了vw,当我们把屏幕宽度改为1920的时候,网页的整个样式包括字体都会等比放大.vw布局我用于大屏监控数据展示.

下图是750屏幕宽度下的页面

vue cli3项目的pc自适应布局_vw第1张

下图是1920屏幕宽度下的页面

vue cli3项目的pc自适应布局_vw第2张

pc端配置

1.安装postcss-px-to-viewport插件,该插件的作用是把项目中style标签内的px在编译后转化为vw.我们在项目中写px,在执行npm run serve后查看界面会发现px已经转化为vw了.

注意对于非style标签的px是无法转化为vw的

npm install postcss-px-to-viewport -D

postcss-px-to-viewport转化例子:

vue cli3项目的pc自适应布局_vw第3张

vue cli3项目的pc自适应布局_vw第4张

2.在package.json同级下新建文件vue.config.js,在vue.config.js中配置如下

module.exports={
    css: {
        extract: false,//false表示开发环境,true表示生成环境
        sourceMap: false,
        loaderOptions: {
          postcss: {
            plugins: [
              require("postcss-px-to-viewport")({
                unitToConvert: "px",    //需要转换的单位,默认为"px"
                viewportWidth: 1920,   //视窗的宽度,对应pc设计稿的宽度,一般是1920
                viewportHeight: 1080,// 视窗的高度,对应的是我们设计稿的高度,我做的是大屏监控,高度就是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' 下的文件
})
            ]
          }
        }
      }    
}

测试

<!-- 在helloworld文件中设置文字的大小为50px,当我们改变窗口宽度的时候,字体大小会跟着改变,就像前言中的例子 -->
<template>
  <div>dididi
    <hr>dididi2
    <hr>dididi3

    </div>
</template>

<script>export default{
  data () {
    return{
    }
  },
  components:{
  }
}

</script>

<style lang='scss' scoped>div{
  font-size: 50px;
}
</style>

启动npm run serve在改变窗口大小的时候,就能看到字体改变了

免责声明:文章转载自《vue cli3项目的pc自适应布局_vw》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇《Excel VBA编程开发》附加内容1:VBA生成GUID微信公众号之:JSSDK接入以及invalid signature等常见错误问题下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

vue项目中echarts属性总结

<div style=" 600px;height: 400px;margin-top: 100px;margin-left: 100px"></div>   js函数中: this.EchartsData = this.$echarts.init(document.getElementById('echarts')); l...

vue用hbuilderX打包app嵌入h5方式云打包和遇到的问题

vue用hbuilderX打包app嵌入h5方式云打包和遇到的问题 vue用hbuilderX打包app就可以了,不过有兼容性问题,转换rem的用不了,嵌入到app的webview里面变得很小了,另外还有返回键监听的问题需要处理,否则按手机上的返回键不起作用,另外缓存问题,加载页跳转白屏问题也需要优化。======================安卓本地打...

【Vue】 编写Vue插件流程

一、在Vue中编写插件流程 1、创建组件 components/message.vue <template> <div v-if="isShow"> <span>{{message}}</span> </div> </template> <...

Vue 中引用组件错误【mint-ui】

场景: 官网:http://mint-ui.github.io/docs/#/zh-cn2/quickstart npm i mint-ui -S main.js 文件中引入并使用 1 //引入 2 import Mint from 'mint-ui' 3 import 'mint-ui/lib/style.css' 4 5 Vue.use(Mint...

在vue项目中stylus的安装及使用

Stylus是一个CSS预处理器。 Stylus安装包安装: dell@DESKTOP-KD0EJ4H MINGW64 /f/gsff-frone $ cnpm install stylus --save-dev √ Installed 1 packages √ Linked 14 latest versions √ Run 0 scripts...

去掉vue路由中的#号

vue开发时地址栏上的ip后面会跟着一个#号,如果想去掉这个井号,可以在路由上加上 mode: 'history',  即可去掉 //设置路由 const router = new VueRouter({ mode: "history", base: __dirname, routes: [ { path: "/",...