vue如何适配移动端

做移动端 相信大家刚刚开始的时候 都会很反感 因为他不像pc端那样 这里会处理很多的兼容性 但是找到方法 做完适配 一切都边的很简单了 

1. 使用lib-flexible  之前文章里面介绍过了 这里就不多介绍了

2.使用vw适配 现在也是相对而言比较火的一种适配  其原理是基于PostCSS插件 下面就看一下到底该怎么使用吧

2.1 第一步 下载脚手架 这里就不啰嗦了 

2.2 第二步 既然是基于PossCss插件 肯定接下来就要下载这个插件了 但是 vue默认是已经下过的 你只需要找到 .postcssrc.js就行了

2.3 第三步 下载一些其他辅助插件

npm i postcss-aspect-ratio-mini postcss-px-to-viewport postcss-write-svg postcss-cssnext postcss-viewport-units cssnano cssnano-preset-advanced --S

2.4 第四步 进入刚刚的.postcssrc.js里面 修改配置  postcss-px-to-viewport : 将项目中的px转化为vw

module.exports = {
  "plugins": {
    "postcss-import": {},
    "postcss-url": {},
    "postcss-aspect-ratio-mini": {},
    "postcss-write-svg": { utf8: false },
    "postcss-cssnext": {},
    "postcss-px-to-viewport": {
      viewportWidth: 750, // 容器宽度,也可以看作设计图的宽度
      viewportHeight: 1334, // 容器高度,可以不配置
      unitPrecision: 3, // px转换为vw后保留的小数位
      viewportUnit: 'vw', // px需要转换成的单位,使用vw
      selectorBlackList: ['.ignore', '.hairlines'], // 不需要转换为其他单位的的class类
      minPixelValue: 1, // 小于等于1px不转换
      mediaQuery: false // 是否允许在媒体查询中使用px
    },
    "postcss-viewport-units": {},
    "cssnano": {
      preset: "advanced",
      autoprefixer: false,
      "postcss-zindex": false
    }
  }
}

2.5 第五步 添加全局css 因为postcss-viewport-units会在计算vw时自动添加content内容,但是content会有一定的副作用,所以添加一个全局的css (针对于img)

img {
    content: normal !important;
}

2.6 第六步 处理兼容性 在index.html里面引入viewport-units-buggyfill插件

<script src="//g.alicdn.com/fdilab/lib3rd/viewport-units-buggyfill/0.6.2/??viewport-units-buggyfill.hacks.min.js,viewport-units-buggyfill.min.js"></script>

 然后调用viewport-units-buggyfill

<script>
    window.onload = function () {
      window.viewportUnitsBuggyfill.init({ hacks: window.viewportUnitsBuggyfillHacks });
    } 
</script>

希望对大家有多帮助 有什么不明白的可以留言 如果解决了 就点个赞吧

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沫熙瑾年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值