大屏适配
Posted Lake-李笑吅
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大屏适配相关的知识,希望对你有一定的参考价值。
1.创建文件
export const echartsSize = function (size, defalteWidth = 1920) {
const docEl = document.documentElement
const clientWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth
if (!clientWidth) return
const fontSize = (clientWidth / defalteWidth)
return Number((size * fontSize).toFixed(3))
}
// 设置系统缩放比,适配各分辨率
export function refreshScale () {
const baseWidth = document.documentElement.clientWidth
const baseHeight = document.documentElement.clientHeight
const appStyle = document.getElementById(\'app\').style
const bodyStyle = document.getElementsByTagName(\'body\')[0].style
const realRatio = baseWidth / baseHeight
const designRatio = 16 / 9
let scaleRate = baseWidth / 1920
if (realRatio > designRatio) {
scaleRate = baseHeight / 1080
}
/**/
appStyle.transformOrigin = \'left top\'
appStyle.transform = `scale(${scaleRate})`
appStyle.width = `${baseWidth / scaleRate}px`
appStyle.height = `auto` //设置高度
/*bodyStyle.background = `radial-gradient(#152B65, #122659 ,#030D32)`*/
bodyStyle.background = `url(\'https://qiniu.dev.haiwojiamei.com/upload/meijia/20210728/cc9c326b15391925efa780367501f82e.png\') no-repeat`
bodyStyle.backgroundPosition =\'center center\'
bodyStyle.backgroundSize = \'100% 100%\'
}
2.在文件中引入
import {refreshScale} from \'@/utils/util\'
3.初始化和窗口变化时执行
mounted() {
refreshScale();
window.onresize=function(){
refreshScale()
}
},
3.设置
body #app{
width: 1920px;
height: 1080px;
}
以上是关于大屏适配的主要内容,如果未能解决你的问题,请参考以下文章
FlutterAndroidFlutter 折叠屏适配 ( 展开大屏 | 折叠主屏 | 折叠副屏 | 静态展示 | 动态热切换适配 | 拉伸布局 | X 轴自适应适配 | 布局重构 )