【 pc大屏适配 】大屏适配的方法

开发中不免会遇到很多适配的需求,那么如何做适配呢,接下来一起看看吧

首先做适配我们需要了解需求,如何适配,按照什么比例适配,下面的适配方式针对于比例适配 vue2项目

(1)添加一个配置文件postcss.config.js ,与src同级

代码如下,可复制

module.exports = {

    plugins: {

      autoprefixer: {},

      "postcss-pxtorem": {

        "rootValue": 12,

        "propList": ["*"]

      }

    }

  }

(2)安装插件 postcss-pxtorem

npm install postcss-pxtorem@^5.1.1

(3) 添加一个 rem.js,并在main.js中引入

代码如下,可复制

// rem等比适配配置文件

// 基准大小

const baseSize = 12

// 设置 rem 函数

function setRem () {

  // 当前页面宽度相对于 1920宽的缩放比例,可根据自己需要修改。

  const scale = document.documentElement.clientWidth / 1920

  // 设置页面根节点字体大小(“Math.min(scale, 2)” 指最高放大比例为2,可根据实际业务需求调整)

  document.documentElement.style.fontSize = baseSize * Math.min(scale, 2) + 'px'

}

// 初始化

setRem()

// 改变窗口大小时重新设置 rem

// window.onresize = function () {

//   setRem()

// }

window.addEventListener('resize',()=>{

  setRem()

})

按照以上方法,适配的配置已经完成,接下来就按照常规写css的方式,插件和配置会自动将px换算为等比rem!!!重点注意来了,插件和配置对行内样式不生效,所以 尽量不要用行内样式,如果一定需要行内样式,请将单位换位rem!!!

vscode中可安装插件 px to rem & rpx & vw (cssrem),在写css时,会提示px和rem换算

Echarts大屏适配主要涉及字体大小和图表的自适应问题。为了实现字体大小的适配,可以使用fontSize函数对所有图表配置中的尺寸数据进行转换,包括定位、字体大小、宽度、内外边距等。通过调用fontSize函数,可以在不需要进行计算的情况下完成尺寸的转换。同时,为了实现图表的自适应,可以监听屏幕尺寸变化,当窗口大小改变时,重新绘制图表,使其适应新的窗口大小。这可以通过添加窗口大小改变的监听事件,并调用chart.resize()方法来实现。 在具体实践中,可以使用echarts库来初始化图表,并传入相应的配置项。例如,使用echarts.init方法初始化一个图表实例,并传入配置项option,然后通过调用setOption方法设置图表的配置。接着,添加窗口大小改变的监听事件,当窗口大小改变时,调用chart.resize()方法重新绘制图表,以适应新的窗口大小。 此外,为了解决刷新页面后Echarts文字和格格不入的问题,可以采用暴露一个方法并引入到Echarts组件中的方式来解决。例如,可以定义一个convertPx方法,用于计算canvas字体大小的适配,其中参数px表示字体大小。通过将该方法引入到Echarts组件中,可以实现文字的适配,使其与图表整体风格相符。 综上所述,针对Echarts大屏适配问题,需要进行字体大小的转换和图表的自适应处理。使用fontSize函数对尺寸数据进行转换,监听窗口大小改变事件并重绘图表,以及通过暴露一个方法来解决文字大小适配问题,可以实现Echarts的大屏适配。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [echarts 适配大屏](https://blog.csdn.net/TomNumber/article/details/127192457)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [大屏项目,如何适配,echarts文字问题,以及Echarts的自适应问题](https://blog.csdn.net/m0_58147586/article/details/121598019)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值