飞翔的鱼 飞翔的鱼
首页
  • Http
  • Ajax
  • Node
  • MongoDB
  • Axios
  • Git
  • Webpack
  • React
  • Vue
  • Uni-app
  • 性能优化
  • 移动端
  • HTML
  • CSS
  • stylus
  • 常用
  • 实战
  • 实用网站
  • 资源库
  • Vue专区
关于
  • css效果
  • js效果
  • 拥抱生活
  • 生活知道
GitHub (opens new window)

Wang

飞翔的鱼
首页
  • Http
  • Ajax
  • Node
  • MongoDB
  • Axios
  • Git
  • Webpack
  • React
  • Vue
  • Uni-app
  • 性能优化
  • 移动端
  • HTML
  • CSS
  • stylus
  • 常用
  • 实战
  • 实用网站
  • 资源库
  • Vue专区
关于
  • css效果
  • js效果
  • 拥抱生活
  • 生活知道
GitHub (opens new window)
  • Http

  • Ajax

  • Node

  • MongoDB

  • Axios

  • Git

  • Webpack

  • React

  • Vue

  • Uni-app

  • 性能优化

  • 移动端

    • 移动端适配
      • 移动端适配
      • vue脚手架中使用第三方库适配
        • vue2脚手架
        • vue3脚手架配置
  • 前端
  • 移动端
wang jiaqi
2021-04-18

移动端适配

# 移动端适配

  1. 为什么要做适配

    1. 机型不一样
    2. 屏幕大小不一样
    3. 屏幕的dpr不一样
  2. 适配的终极目标

    1. 让一张设计稿的内容在不同的机型上呈现的效果一致
    2. 内容在不同的机型上 ‘等比’
  3. 常用适配方案

    1. viewport适配
    2. rem适配
  4. viewport适配

    1. 内容:

      meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=no">
      
      1
    2. 目的

      1. 布局视口 = 设备视口
  5. rem适配

    1. 原理:

      1. 根据不同屏幕大小控制根节点rem字体大小
      2. 页面中的内容大小设置用rem从而达到适配的目的
    2. 实现: 第三方库,参考下方

# vue脚手架中使用第三方库适配

# vue2脚手架

  1. 安装依赖

    1. npm install px2rem-loader lib-flexible --save
  2. 配置说明

    1. 在项目入口文件 main.js 里 引入 lib-flexible, flexible会自动根据设备情况动态设置rem的值的大小

      import 'lib-flexible/flexible'
      
      1
    2. 在build文件夹下的util.js中添加

      //  新增内容开始
      // 全局定义px2remLoader
      const px2remLoader = {
          loader: 'px2rem-loader',
          options: {
          remUnit: 37.5  // UI设计图的10等分大小
          }
      }
      // 新增内容结束
      
      // 在该函数的loaders中添加
       function generateLoaders (loader, loaderOptions) {
           // 添加使用 px2remLoader
      // 修改代码开始
           
           const loaders = options.usePostCSS ? [cssLoader, postcssLoader,px2remLoader] : [cssLoader, px2remLoader]
      // 修改结束
      
          if (loader) {
          loaders.push({
          loader: loader + '-loader',
          options: Object.assign({}, loaderOptions, {
          sourceMap: options.sourceMap
          })
          })
          }
      
          // Extract CSS when that option is specified
          // (which is the case during production build)
          if (options.extract) {
          return ExtractTextPlugin.extract({
          use: loaders,
          fallback: 'vue-style-loader'
       })
          } else {
          return ['vue-style-loader'].concat(loaders)
          }
      }
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38

# vue3脚手架配置

  1. 安装依赖

    1. npm install postcss-px2rem lib-flexible --save
  2. 配置说明

    1. 在项目入口文件 main.js 里 引入 lib-flexible, flexible会自动根据设备情况动态设置rem的值的大小
      import 'lib-flexible/flexible'
    
    1
    1. 在vue.config.js中添加配置

      const px2rem = require('postcss-px2rem')
      // 配置postcs-px2rem
      const postcss = px2rem({
        remUnit: 37.5   //UI设计图的10等分大小
      })
      css: { // 添加postcss配置
          loaderOptions: {
            postcss: {
              plugins: [
                postcss
              ]
            }
          }
      }
      
      
      
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
编辑 (opens new window)
上次更新: 2021/07/01, 20:33:02
性能优化

← 性能优化

最近更新
01
数组常用方法
05-21
02
边框
04-30
03
js1
04-29
更多文章>
Theme by Vdoing | Copyright © 2021-2021 本博客仅仅作为自己日常学习记录笔记使用
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×