【实战干货】UI 设计了不同 size 的海报/html 页面怎么办?

原则

我们只会针对某一个最大 size 来实现代码!

并且,我们肯定不可能每个 size 都写一份代码!!!

怎么办?

使用 scale 来实现!

1.scale 缩小

css 复制代码
tramsform:scale(0.5)

这个时候是从中心开始缩放的,我们希望是从左上角开始缩放:

2.左上角开始缩放

css 复制代码
transform-origin: left top;

突然发现缩放之后,虽然目标 dom 看起来宽高变小了,但是实际宽高还是那个值,我们希望实际宽高变成 缩放之后的宽高:

3.实际宽高也缩放

  1. 如果该被缩放的 dom 的宽高是固定的,那么可以通过缩放比,直接计算出缩放之后的宽高,设置给该 dom 的父元素。
  2. 如果该缩放的 dom 的宽高是不固定的,那么需要通过 js 获取缩放之后的 dom 的实际宽高,再设置给该 dom 的父元素
相关推荐
IT_陈寒3 分钟前
Vite 5分钟性能优化实战:从3秒到300ms的冷启动提速技巧(附可复用配置)
前端·人工智能·后端
迦南giser3 分钟前
webpack从0到1详解
前端·javascript·css·webpack·node.js
xkxnq3 分钟前
第二阶段:Vue 组件化开发(第 26天)
前端·javascript·vue.js
华玥作者7 分钟前
uni-app + Vite 项目中使用 @uni-helper/vite-plugin-uni-pages 实现自动路由配置(超详细)
前端·uni-app·vue·vue3·vite
m0_748254669 分钟前
HTML 文本格式化基础
前端·html
十六年开源服务商9 分钟前
WordPress集成GoogleAnalytics最佳实践指南
前端·人工智能·机器学习
狼性书生12 分钟前
uniapp+vue3实现的简单吐司通知弹窗组件
前端·uni-app·vue·组件·插件
克里斯蒂亚诺更新16 分钟前
使用elementUI的表格报错ResizeObserver loop completed with undelivered notifications.
前端·javascript·elementui
陈随易16 分钟前
Vue-Router v5内置文件式路由,告别手写维护的恐惧
前端·后端·程序员
C_心欲无痕24 分钟前
移动端 B 站弹幕功能实现
前端·javascript