首页 > 其他分享 >React--移动端适配

React--移动端适配

时间:2022-08-18 16:00:28浏览次数:84  
标签:-- 适配 px rem React vw 100 375

  • 适配原理

    • 选择某个手机的尺寸大小作为基准,其他手机进行等比例缩放

    • 一般选择 iPhone 6(2 倍屏幕),屏幕宽度为:375px

  • 适配方式

    • rem:需要手动修改 html 元素的 font-size;额外设置 body 元素的字体大小为正常值

    • vw: 1 vw 等于屏幕宽度的 1%

 

// rem 适配
// iphone6       html ==> font-size: 37.5px
// iphone6 plus  html ==> font-size: 41.4px
// 
// iPhone 6 下宽高为 100px:
// 100 / 37.5 ≈ 2.667
// height: 2.667rem; width: 2.667rem;

// vw 适配
// iPhone 6 下宽高为 100px:
// 100 / (375 / 100) = 100 / 3.75 ≈ 26.7vw
// height: 26.667vw; width: 26.667vw;

 

步骤

  1. 安装 px 转 vw 的包:yarn add -D postcss-px-to-viewport

    • 包的作用:将 px 转化为 vw,所以有了该工具,只需要在代码中写 px 即可

  2. craco.config.js 添加相应配置

  3. 重启项目,让配置生效

 

/craco.config.js 中:

const pxToViewport = require('postcss-px-to-viewport')
const vw = pxToViewport({
  // 视口宽度,一般就是 375( 设计稿一般采用二倍稿,宽度为 375 )
  viewportWidth: 375
})

module.exports = {
  // 此处省略 webpack 配置
  webpack: {},

  style: {
    postcss: {
      plugins: [vw]
    }
  }
}

 

标签:--,适配,px,rem,React,vw,100,375
From: https://www.cnblogs.com/426jie/p/16599005.html

相关文章

  • Linux 运维项目发布指令笔记
    安装xsheel7 如果安装以后显示“该版本是一个beta测试版本”修改本地时间到一个比较早的时间以后再安装可以破除此问题指令:1.ps-ef|grepjava    查看进程......
  • flutter系列之:widgets,构成flutter的基石
    目录简介StatelessWidget和StatefulWidgetStatelessWidget详解StatefulWidget详解总结简介flutter中所有的组件都是由widgets组成的,flutter中有各种各样的widgets,这些wid......
  • KingbaseES V8R6集群维护案例之---将securecmdd通讯改为ssh案例
    案例说明:在KingbaseESV8R6的后期版本中,为了解决有的主机之间不允许root用户ssh登录的问题,使用了securecmdd作为集群部署分发和通讯的服务,有生产环境通过漏洞扫描,在8890(se......
  • Java常用类
    Object和Objects类toString()方法用来返回当前对象本身的有关信息,默认的是返回对象所在的类名和哈希码的16进制表示。一般需要重写toString()方法获取该对象的字段名和值......
  • php7.4 php-fpm 启动报错问题
    由于业务需要使用php7.4运行环境,编译安装好PHP7.4,并做好systemd服务管理文件,发现用systemctlstartphp-fpm.service时无法正常启动php-fpm,报了一个很奇怪的错。ERROR:fa......
  • linux--shell
    shell的第一行一般都是#!开头指的是解释器,默认是#!/bin/bash#!/usr/bin/python在路径下执行后缀.sh文件,需要加./,否者没有权限执行解决方法1:在sh文件shebang中加入,#!/b......
  • Visual Studio自定义背景图片
    首先先打开我们的VisualStudio然后点击[扩展]-----------[管理扩展]然后搜索[Claudia],点击[下载]按钮稍等一下这时候会提示我们重新启动重新启动后会这样,稍等一......
  • python中输出两条长度一致序列碱基不同的个数
     001、方法1root@PC1:/home/test#lstest.pyroot@PC1:/home/test#cattest.py##测试程序#!/usr/bin/pythonstr1="GAGCCTACTAACGGGAT"......
  • spring框架2:创建第一个spring项目
    创建hello_ssm工程,在工程中创建第一个模块hello_springFile-》new-》module,参照“spring框架1”“3.创建maven工程”,结果如下: 默认的目录结构和这个有差距,请参照上面的......
  • oracle 生成汉字字符串的拼音首字符
    CREATEORREPLACEFUNCTIONFUNC_GET_STRING_PY(strsvarchar2)returnvarchar2is/***********************************过程名称:FUNC_GET_STRING_PY功能:生成汉字字符串的......