惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Jina AI
Jina AI
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
T
Threat Research - Cisco Blogs
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Hugging Face - Blog
Hugging Face - Blog
WordPress大学
WordPress大学
阮一峰的网络日志
阮一峰的网络日志
S
Schneier on Security
博客园 - 三生石上(FineUI控件)
P
Proofpoint News Feed
G
Google Developers Blog
Project Zero
Project Zero
小众软件
小众软件
NISL@THU
NISL@THU
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
V
Vulnerabilities – Threatpost
B
Blog RSS Feed
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
宝玉的分享
宝玉的分享
博客园 - 司徒正美
Simon Willison's Weblog
Simon Willison's Weblog
Schneier on Security
Schneier on Security
G
GRAHAM CLULEY
GbyAI
GbyAI
Recent Announcements
Recent Announcements
Cisco Talos Blog
Cisco Talos Blog
C
Cisco Blogs
C
CXSECURITY Database RSS Feed - CXSecurity.com
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
人人都是产品经理
人人都是产品经理
C
CERT Recently Published Vulnerability Notes
罗磊的独立博客
T
Tailwind CSS Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
I
Intezer
Blog — PlanetScale
Blog — PlanetScale
月光博客
月光博客
PCI Perspectives
PCI Perspectives
S
Security @ Cisco Blogs
Google Online Security Blog
Google Online Security Blog
M
MIT News - Artificial intelligence
C
Cybersecurity and Infrastructure Security Agency CISA
T
Threatpost
B
Blog
The Hacker News
The Hacker News
Attack and Defense Labs
Attack and Defense Labs
腾讯CDC
T
Tenable Blog
酷 壳 – CoolShell
酷 壳 – CoolShell

博客园 - 小虫1

豆包视频去水印工具横向测评:麻雀 AI 工具箱与 3 款海外工具实测对比 视频去水印工具实战横评:少谈“黑科技”,多聊实际能用的 2026 在线视频去水印工具实测:4 种方案对比,本地处理首选麻雀AI工具箱 豆包生成的图片,怎么去水印? 2026年,GEO到底怎么做?-麻雀GEO Topaz Video AI的替代品 -麻雀AI视频修复工具,免费、安全、高效的Topaz替代选择 视频清晰度增强网站-麻雀AI视频修复工具 vue2 函数式调用一个弹框组件 跟框架无关的前端换皮肤 前端请求跨域,解决方案 ssh2-sftp-client 上传文件至服务器 vue项目下自己封装上传文件功能 beego 注册路由失效404,commentsRouter.go没有生成 前端 docker jenkins mkdocs生成的网站为何很慢 重新搞nginx vue公共布局组件Layout引入 重新认识布局:你真的懂flex吗 重新认识布局:html和body元素 重新认识布局:3d空间中的css盒子 重新认识布局:百分比单位 重新认识布局:标准流,浮动,定位的关系 微信小程序 等宽不等高瀑布流
前端代码实现整体缩放网页,做到缩放分辨率的效果
小虫1 · 2022-03-25 · via 博客园 - 小虫1

需求:


设计图是按照1920*1080的设计的,版心1200px,上线之后,需求方在笔记本电脑,大概逻辑分辨率宽度为1536px的屏幕上看,结果出现整体偏大情况。
对于这一需求,最原始的想法是,让设计重新设计,一个个区域改代码缩小。但这么做,肯定不是最好的方案。
我们按住CTRL和+号键盘,可以缩放网页,对于需求方的1536逻辑分辨率,缩小80%,逻辑分辨率就可以达到1920的设计图尺寸,不会存在过大的情况了。
那么,问题转化为怎样用代码实现浏览器缩放的功能

1.   2d转换:transform:scale(0.8)


这种第一反应非常好,直接缩小html元素。代码如下

@media screen and (max-width: 1900px) {
  html {
    transform: scale(0.8);
  }
}

然而实际效果并不如意版心不居中了,虽然这个也可以解决,但显然不是最佳方案。

其次,transform:scale(0.8)会改变一些东西,比如缩放之后:固定定位会变成绝对定位。
如果用了其他UI框架,缩小后各种问题非常多:笔者用的ant design vue ,缩放后,下拉框的内容找不到了。

放弃这种方案。

2.   zoom:0.8


这不是一个标准属性,代码如下:

<style>
@media screen and (max-width: 1900px) {
  html {
    zoom: 0.8;
  }
}
</style>

这种就非常好,唯一遗憾的FireFox不支持。其他浏览器基本上都支持。
还有个注意点,缩放后,用原生js获得元素位置和滚动到特定位置会出偏差。不过这种页面应用比较少。