vue-cli3.0项目中使用vw——相比flexible更原生的移动端解决方案

以前喜欢用lib-flexible配合px2rem达到移动端适配的效果,
最近了解了下vwvh单位,以viewport为基准,1vw1vh分别为window.innerWidthwindow.innerHeight的百分之一。

安装

命令行输入:yarn add postcss-px-to-viewportnpm i postcss-px-to-viewport -save -dev

配置

package.json中,在postcss中添加代码:

  "postcss": {
        "plugins": {
            "autoprefixer": {},
            "postcss-px-to-viewport": {
                "viewportWidth": 750,
                "minPixelValue": 1
            }
        }
    },

配置项:
“viewportWidth”: 750, // 设计稿的宽度
“unitPrecision”: 3, // px转成vw、vh后小数点保留的位数
“minPixelValue”: 1, // 不转化为vw的最小px值

使用场景

vw与vh会在pc与移动端均产生效果,而不像flexible只会转换一定宽度(记得是750px)以下设备的px为rem,因此若设计稿为移动端而生,全权使用vw单位会使得页面在pc端出现字体过大等现象,需酌情处理,根据应用场景自行选择
vue-cli3.0引入lib-flexible/px2rem

兼容性

vw/vh 单位其实出现比较早了,只是以前支持性不太好,现在随着浏览器的发展,大部分(92%以上)的浏览器已经支持了vw/vh,关于其兼容性可以在线查询:
can i use?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值