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

VantUI移动端适配

时间:2024-04-15 10:11:54浏览次数:13  
标签:插件 适配 px VantUI vw 移动 postcss 37.5

VantUI的官方设计稿是320px,而设计稿普遍是750px,所以官方推荐配合postcss-pxtorem插件使用:

// eslint-disable-next-line no-undef
module.exports = {
  plugins: [
    // eslint-disable-next-line no-undef
    require('postcss-pxtorem')({
      rootValue({ file }) {
        return file.indexOf('vant') !== -1 ? 37.5 : 75;
      },
      propList: ['*'],
      unitPrecision: 8
    })
  ]
};

同时推荐使用lib-flexible用于设置rem基准值,但是viewport单位得到了众多浏览器的支持,所以已经不推荐使用lib-flexible插件。可以使用vw单位来设置root元素的字体大小,其他仍然使用rem。

假设我们期望root元素的字体大小是37.5px(这里可以换成你期望设置的字体大小),那么计算vw的方式:

可视区域的宽度是100vw,也就是375px,所以1px就是0.26666667vw,那么37.5px就是37.5 * 0.26666667vw=10vw(取整)。

现在就可以按照设计稿的尺寸写CSS了,比如,有个元素宽度是100px,直接写100px,不用做什么计算,postcss-pxtorem会自动帮你转换:100/75=1.33333333rem,这里除以75是因为我们设置了rootValue是75。

1.33333333rem再乘以37.5等于50,正好等于设计稿尺寸的一半。

viewport布局

vw已经得到了很多浏览器的支持,如果用vw做单位的,就免去了计算root元素的字体大小的麻烦了,因为它是浏览器的可视区域视口计算。在VantUI官方样例中推荐的是postcss-px-to-viewport插件,但是这个插件并不理想,这里推荐另一款插件cnjm-postcss-px-to-viewport,可以判断是否是VantUI文件来设置不同的视口大小。

module.exports = {
  plugins: {
    'cnjm-postcss-px-to-viewport': {
      viewportWidth: 750,
      unitPrecision: 8,
      customFun({ file }) {
        const designWidth = path.join(file).includes(path.join('node_modules', 'vant')) ? 375 : 750;
        return designWidth;
      }
    }
  }
};

标签:插件,适配,px,VantUI,vw,移动,postcss,37.5
From: https://www.cnblogs.com/ryanzff/p/18135254

相关文章

  • mv 命令 – 移动或改名文件
    语法格式:mv参数源文件名目标文件名常用参数:mv命令来自英文单词move的缩写,中文译为“移动”,其功能与英文含义相同,能够对文件进行剪切和重命名操作。这是一个被高频使用的文件管理命令,我们需要留意它与复制命令的区别。cp命令是用于文件的复制操作,文件个数是增加的,而mv......
  • RestTemplate进行https请求时适配信任证书
    转载请注明出处:1.http协议请求使用RestTemplate进行http协议的请求时,不需要考虑证书验证相关问题,以下为使用RestTemplate直接使用的代码示例:importorg.springframework.web.client.RestTemplate;importorg.springframework.http.ResponseEntity;importorg.spring......
  • SF58-ASEMI适配器二极管SF58
    编辑:llSF58-ASEMI适配器二极管SF58型号:SF58品牌:ASEMI封装:DO-27最大平均正向电流(IF):5A最大循环峰值反向电压(VRRM):600V最大正向电压(VF):1.70V工作温度:-55°C~150°C反向恢复时间:35ns芯片个数:2芯片尺寸:72mil引脚数量:2正向浪涌电流(IFMS):125A包装方式:50/管1000/盘3000/箱SF......
  • 2-74. 利用 AStar 实现 NPC 的移动
    运行游戏看看人物能否到网格中点修改NPCMovement修改Settings修改AStarTest调试修复Bug一开始人物未显示原因是currentScene没有进行赋值,可能currentScene是通过StartScene变量进行赋值的,但是我并没有找到赋值的地方,所以我暂时先写死这个变量算了......
  • fstab 与移动硬盘挂载
    参考:浅析fstab与移动硬盘挂载方法一个典型的fstab结构如下:#<device><dir><type><options><dump><fsck>/dev/sda1/ext4noatime01/dev/sda2......
  • 社交软件移动端
    对比分析墨刀、Axure、Mockplus等原型设计工具的各自的适用领域及优缺点:墨刀:适用领域:适合快速创建移动应用原型,尤其在UI设计方面表现出色。优点:操作简单,学习成本低;在线协作方便;支持多平台。缺点:功能相对较简单,复杂交互实现困难。Axure:适用领域:广泛适用于各种类型的产品......
  • Microsoft Wi-Fi Direct Virtual Adapter 是 Windows 操作系统中的一个虚拟网络适配器
    MicrosoftWi-FiDirectVirtualAdapter是Windows操作系统中的一个虚拟网络适配器,用于支持Wi-FiDirect功能。Wi-FiDirect是一种无需基础设施的连接技术,允许支持Wi-Fi的设备之间直接进行点对点连接,无需通过传统的Wi-Fi路由器或接入点。作用:直连功能: MicrosoftWi-......
  • 用物联流量卡的监控器能改变移动流量卡吗
    物联流量卡#使用物联流量卡的监控器无法直接改变移动流量卡本身的属性和功能。物联流量卡的监控器主要用于监控和管理物联网设备的数据使用情况,提供实时的流量消耗、连接状态和设备运行情况等信息。本文将从物联流量卡的监控器工作原理、功能和应用场景等方面进行介绍,以帮助读者更......
  • 移动web
    01-平面转换作用:为元素添加动态效果,一般与过渡配合使用概念:改变盒子在平面内的形态,平面转换又叫2D转换平移属性:transform:translate(X轴移动距离,Y轴移动距离);取值(1)像素单位数值(2)百分比(3)正负均可技巧translate(),表示沿着x轴移动单独设置X或Y轴移动距离:tran......
  • HAProxy适配openGauss使用指导书
    一、HAProxy简介HAProxy是一个开源的项目,其代码托管在Github上,代码链接如下:HAProxy代码链接。HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。HAProxy实现了一种事件驱动,单一进程模型,此模型支持非......