【实战干货】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 的父元素
相关推荐
程序员爱钓鱼5 小时前
Node.js 编程实战:文件读写操作
前端·后端·node.js
PineappleCoder5 小时前
工程化必备!SVG 雪碧图的最佳实践:ID 引用 + 缓存友好,无需手动算坐标
前端·性能优化
JIngJaneIL5 小时前
基于springboot + vue古城景区管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
敲敲了个代码6 小时前
隐式类型转换:哈基米 == 猫 ? true :false
开发语言·前端·javascript·学习·面试·web
澄江静如练_6 小时前
列表渲染(v-for)
前端·javascript·vue.js
JustHappy6 小时前
「chrome extensions🛠️」我写了一个超级简单的浏览器插件Vue开发模板
前端·javascript·github
Loo国昌6 小时前
Vue 3 前端工程化:架构、核心原理与生产实践
前端·vue.js·架构
sg_knight6 小时前
拥抱未来:ECMAScript Modules (ESM) 深度解析
开发语言·前端·javascript·vue·ecmascript·web·esm
LYFlied6 小时前
【每日算法】LeetCode 17. 电话号码的字母组合
前端·算法·leetcode·面试·职场和发展