大屏邪修自适应

之前提到过通过sass函数和postcss来设置样式,使项目适应大屏,但是如果一些地方比如echats或者其他ui组件不好设置样式函数来修改样式,可以尝试下邪修写法。

因为之前甲方使用的3:2的屏,怎么都不满意,反倒是别人通过拉伸的方案满意了,那就邪一把!

javascript 复制代码
const innerWidth = ref<number>(0);
const innerHeight = ref<number>(0);
const setScreenVars = () => {
  innerWidth.value = window.innerWidth;
  innerHeight.value = window.innerHeight;
};
setScreenVars();

首先初始化获取到浏览器的宽高方便使用

javascript 复制代码
const pageTransform = computed(() => {
  return `scale(${innerWidth.value / 1920}, ${innerHeight.value / 1080})`;
});

以1920*1080为基准,通过transform让元素变形

html 复制代码
<div
    class="largeScreen"
    :style="{ transform: pageTransform }"
>
</div>

大屏的最大层容器使用:style动态样式让最大容器变形

javascript 复制代码
window.addEventListener("resize", setScreenVars);

最后通过window的监听事件,浏览器大小改变的时候重新调用获取浏览器大小的方法,innerWidth和innerHeight改变时pageTransform重新计算,div.largeScreen就会改变,这样就可以了,里面的其他元素依旧以1920*1080去开发就行了。

够邪门吧

相关推荐
南城以南溫暖如初14714 小时前
社交裂变商城系统设计与实战开发指南
java·spring boot·mysql·vue·mybatis
南城以南溫暖如初14715 小时前
分享返现商城系统开发实战:技术架构与运营经验指南
java·spring boot·mysql·架构·vue·mybatis
阿图灵16 小时前
MakerHub 开发报告:v1.0.0 → v1.1.0(单日 26 提交,图片渲染、目录跟随与数据真实化)
前端·vue·个人网站·deepseek·开发报告
南城以南溫暖如初14716 小时前
社群电商实战指南:从零搭建高转化社区的技术架构
java·spring boot·mysql·系统架构·vue·mybatis
南城以南溫暖如初14716 小时前
会员返利商城系统开发实战:架构设计与实现指南
java·spring boot·mysql·vue·mybatis
jay神4 天前
【计算机毕业设计】基于Spring Boot的宠物领养管理系统
java·spring boot·后端·vue·毕业设计·宠物
要开心吖ZSH4 天前
腾讯 IM 前端对接小白教程:医患一对一聊天(含自定义报告卡片)
vue·健康医疗·即时通讯·im
深念Y4 天前
07-SSR水合问题实战排查与修复记录
前端·vue·vite·nuxt·ssr·csr·水合
深念Y4 天前
NativeScript 移动端开发踩坑记录
前端·ui·vue·安卓·移动端·native·原生
avi91115 天前
【】js不同颜色(Vue 框架)今时今日2026年学编程入门(10月1日)
前端·vue.js·vue·vue框架·前端入门·vue入门·html上传