首页 > 其他分享 >实现不同屏幕自适应【postcss-px-to-viewport】

实现不同屏幕自适应【postcss-px-to-viewport】

时间:2023-09-24 15:57:35浏览次数:52  
标签:行内 样式 px postcss px2vw viewport

效果图

未转换前:

转换后:

背景

平常开发的时候使用px作为样式单位,但是在不同的屏幕尺寸下不能自适应,我们希望项目中所有使用到的px单位都转换成vw单位

使用步骤

  1. 安装
npm i postcss-px-to-viewport -D
  1. 在项目根目录下创建postcss.config.js
module.exports = {
  plugins: {
    'postcss-px-to-viewport': {
      // 换成你本地在哪个分辨率下开发的尺寸
      viewportWidth: 375,
    },
  },
}

3.postcss-px-to-viewport插件不会对行内样式起作用。

那怎么解决?
① 在utils文件夹下创建px2vw.js文件

// 传入的num值是行内样式,不需要带px单位
export default function px2vw(num) {
  return (100 / window.screen.width) * num + 'vw'
}

② 将上述的方法挂载到app实例上,这样在所有的vue实例中都可以使用到这个方法
src/index.js

const app = createApp(App)
import px2vw from './utils/px2vw'
app.config.globalProperties.$px2vw = px2vw

③ 行内样式使用
App.vue

<h1 :style="{ height: $px2vw(200) }">测试行内样式-1</h1>
<h1 class="demo">测试行内样式-2</h1>
<style lang="less" scoped>
h1 {
  background-color: orange;
}
.demo {
  height: 200px;
}
</style>

参考文档


标签:行内,样式,px,postcss,px2vw,viewport
From: https://www.cnblogs.com/it774274680/p/17726069.html

相关文章

  • PXC某个节点异常恢复
    PerconaXtraDBCluster是mysql的一种高可用架构,集群由多个节点组成,建议至少配置3个节点,其中每个节点都包含跨节点同步的相同数据集。以三节点为例,集群某个节点因硬件、网络、脑裂等原因,退出集群后,如果剩余两节点写集缓存(gcache.size)中仍然还有异常节点退出集群后执行的事务信息,......
  • 《安富莱嵌入式周报》第301期:ThreadX老大离开微软推出PX5 RTOS第5代系统,支持回流焊的
    祝大家开工大吉视频版:https://www.bilibili.com/video/BV1GT411o7zr1、ThreadX老大离开微软,开发的第5代RTOS系统PX5RTOS正式上线最早是看到IAR的一条消息,全面支持PX5RTOS,然后就进一步上他们的官方下载白皮书了解相关消息当看到这两个名字时,很熟悉,这不就是ThreadX的老大BillLamie......
  • 1px代表什么意思
    在CSS中,px是一个长度单位,代表像素(pixel)。1px就是屏幕上的一个像素点。像素是测量图像显示的最小单位,代表了屏幕上的一个点。比如,如果你的屏幕分辨率是1920x1080,那么它就是由1920个像素点横向和1080个像素点纵向组成的。在网页设计中,像素是最常用的单位之一。例如,你可以用它来设......
  • UPX!
    moectf{0h_y0u_Kn0w_H0w_to_Rev3rse_UPX!!!}UPX!关键是要f5正确的函数在下面的这个函数f5得到 找到对应的十六进制进行亦或操作再转成字符串即可 ......
  • 使用pxe安装uos系统
    UOS操作系统如何实现自动安装(一)UOS操作系统如何实现自动安装(二)================================================================PXE工作原理这里就不多说了,网上有很多介绍。这里说一下实验过程:    1、配置nfs服务,把镜像文件共享出去。    2、配置tftp服务,并把pxe启......
  • PostCSS received undefined instead of CSS string
    问题npmrunserve启动项目后,报错SyntaxError:Error:PostCSSreceivedundefinedinsteadofCSSstring解决node-sass版本兼容问题导致,按照应用使用的node-sass版本切换(可使用nvm)到对应的node版本,再重新npmi......
  • 大屏自适应/适配方案【详解】(echarts自适配、rem、flexible.js、vscode中px2rem插件自
    原文链接:https://blog.csdn.net/weixin_41192489/article/details/120004315大屏自适应的核心目标有:字体大小随屏幕尺寸自适应变化详见下文自动撑满全屏设置如下.bg{background:url("~@/assets/images/主背景.png");position:fixed;top:0;left:0;wi......
  • 外壳防护等级IPX6IPX7IPX8防尘放水测试EN60529
    外壳防护等级(IP代码)外壳防护等级(IP代码)GB/T4208-2017,IEC60529:2013,EN60529:1992+A1:2000+A2:2013,BSEN60529:1992+A2:2013不测:IPX1,IPX2,IPX8IPX9;IPX3,IPX4只测摆管的试验2021-04-12250W水平与垂直火焰试验方法电工电子产品着火危险试验第16部分:......
  • 基于SMQ7VX690T FPGA +FT-6678 DSP 6U VPX双FMC载板
    概要QT7041G-DSP是一款基于6UVPX架构,主体芯片采用国微SMQ7VX690T芯片作为主处理器、1片银河飞腾DSP处理器FT-6678做为协处理芯片的6UVPX标准双FMC载板。可对外部传入的数据处理分析,具备强大的运算能力。 可用于软件无线电系统,基带信号处理,无线仿真平台,高速图像采集、处理等......
  • 基于K7+V7 的高性能双FMC 6U VPX 载板
    概要QT7041板卡是一款基于双V7的高性能6UVPX载板。板载2个HPC形式的FMC连接器和1个HSPC形式的FMC+连接器。板卡选用了Xilinx公司7系FPGA中最高端的Virtex7系列中的XC7VX690T-2FFG1761和XC7VX690T-2FFG1927各1颗,组成双FPGA处理模块,搭配1颗XC3S200AN-4FTG256作为控制模块。其中XC7V......