css中我们常用来缩放的样式元素是transform:scale;
也还有我们不熟悉的zoom,在实际的应用场景中,我们需要根据自身项目的需要,结合不同的解决方案的优缺点来选择适合我们项目解决方案。

浏览器的兼容性:

1.1 zoom在早年是属于IE浏览器的私有工具,但是,现在,除了FireFox浏览器(FireFox浏览器不支持),其他,尤其Chrome和移动端浏览器已经很好支持zoom属性了。
而transform下的scale就不一样了,是明明确确写入规范的
1.2 zoom的字面意思是“变焦”,可以改变页面上元素的尺寸,属于真实尺寸。
1.3 transform 从IE9 到其他现代浏览器都支持

使用方式:

2.1 zoom:
百分比值:zoom:50%,表示缩小到原来的一半。
数值:zoom:0.5,表示缩小到原来的一半。
normal关键字:zoom:normal等同于zoom:1.
2.2 transform: scale()
语法为:transform: scale( []). 同时有scaleX, scaleY专门的x, y方向的控制。

和zoom不同,scale并不支持百分比值和normal关键字,只能是数值。而且,还能是负数,没错,负数。而zoom不能是负值!

其他差异

更深层次的差异
3.1 zoom的缩放是相对于左上角的;而scale默认是居中缩放;
3.2 zoom的缩放改变了元素占据的空间大小;而scale的缩放占据的原始尺寸不变,页面布局不会发生变化;
3.3 zoom和scale对元素的渲染计算方法可能有差异(如下截图示意)。

3.4 对图片的缩放,scale导致模糊
3.5 对文字的缩放规则不一致。zoom缩放依然受限于最小12像素中文大小限制;而scale就是纯粹的对图形进行比例控制,文字50%原来尺寸

渲染性能的差异

由于zoom的缩放会改变元素的真实空间大小。
根据测试,在文档流中zoom加在任意一个元素上都会引起一整个页面的重新渲染,而scale只是在当前的元素上重绘。这其实很好理解,对吧。scale呢变化时候,其原本的尺寸是不变的,因此,就没有layout的重计算;但是zoom牵一发动全身,就麻烦地多!

也就是所zoom会一起重排重绘,scale只会引起重绘,zoom的渲染性能会比较差。

总结

下面用表格来更加清晰的对比一下吧:

css中zoom和scale相关推荐

  1. CSS中zoom和scale的区别

    zoom和scale这两个东西都是用于对元素的缩放,但两者除了兼容性之外还有一些不同的地方. zoom缩放会将元素保持在左上角,而scale默认是中间位置,可以通过transform-origin来设 ...

  2. css 中的zoom,对CSS中zoom属性的总结

    在css中,zoom属性作用是设置或检索对象的缩放比例.对应的脚本特性为zoom.虽然很多人都知道,但是任然有人不知道zoom的具体的用法,或者没有深究过,下面就把zoom的用法总结一下: 1.CSS ...

  3. 请问下谁知道,column-tree.css中zoom是什么意思,在下面这代码里面起什么作用?...

    请问下谁知道,column-tree.css中zoom是什么意思,在下面这代码里面起什么作用? .x-column-tree .x-tree-node { zoom:0; } .x-column-tr ...

  4. html中zoom方法,CSS中zoom属性或overflow:auto的使用方法

    这次给大家带来CSS中zoom属性或overflow:auto的使用方法,使用CSS中zoom属性或overflow:auto的注意事项有哪些,下面就是实战案例,一起来看一下. 前言 其实在CSS中的 ...

  5. CSS中zoom属性的作用

    这里介绍一下CSS中的Zoom属性,这个属性一般不为人知,甚至有些CSS手册中都查询不到.但经常会在一些css样式中看到它出现. Zoom属性是IE浏览器的专有属性,Firefox等浏览器不支持.它可 ...

  6. CSS中zoom和transform:scale的区别

    原文地址:http://www.cnblogs.com/foodoir/p/5821018.html 关于zoom: 以前只是看到别人的代码中用过zoom,自己从未使用过,今天在探究ie7兼容inli ...

  7. css中zoom的用法

    zoom这个属性是ie专有属性,除了设置或者检索对象的缩放比例之外,它还有可以触发ie的haslayout属性,清除浮动,清除margin重叠等作用. 不过值得注意的一点就是火狐浏览器不支持zoom属 ...

  8. css中“zoom:1”是什么意思

    继承性: 无 兼容性: IE 基本语法 zoom : normal | number 语法取值 normal : 默认值.使用对象的实际尺寸 number : 百分数 | 无符号浮点实数.浮点实数 ...

  9. FireFox火狐浏览器不支持CSS中zoom属性的解决办法

    首先需要明确一点的是,火狐浏览器全系列不支持CSS的zoom缩放属性. 浏览器兼容查询网站:https://caniuse.com/ 所以此时只能通过transform的scale实现放缩 代码很简单 ...

最新文章

  1. RateLimiter 的底层实现是啥?
  2. ST17H26尽量避免switch语句
  3. c++学习笔记之类和对象的进阶
  4. 从数学归纳法到递归算法
  5. 炉石传说android手机版本,炉石传说安卓手机版官方apk
  6. 民航产业发展趋势及对策建议(2021-10-21)
  7. python——识别真实键盘按下模拟键盘按下
  8. 光子晶体和深度学习结合进行多相流检测
  9. JQ彩色3D纸片折叠动画
  10. 名帖97 赵孟頫 小楷《洛神赋》
  11. 耳朵后神经疼是怎么回事,耳朵引起的神经疼痛
  12. 基于JAVAOTET交通在线查询购票系统计算机毕业设计源码+系统+lw文档+部署
  13. 辅流式沉淀池固体负荷计算方法_辐流式沉淀池设计计算
  14. pdf阅读器绿色版轻快PDF阅读器
  15. C标签获取list长度
  16. java图像处理--形态学填充处理imfill
  17. wps姓名隐藏为星号_wps表格把重要数字隐藏用星号显示的方法步骤
  18. 【深度学习环境搭建<二>】CUDA和 cuDNN 的安装
  19. [Unity3D]Unity3D再叙NGUI之血条及技能冷却效果
  20. 记录一次ABP下载模板的坑

热门文章

  1. 如何用linux搭建简单的论坛
  2. 显卡DirectX技术发展详解
  3. 操作系统OS第一章练习作业【附答案详解】
  4. 1262: 魔法宝石
  5. mysql characterencoding utf8mb4_Mysql UTF-8mb4字符集的问题
  6. 网页Unity3d游戏全离线玩的高招!
  7. 飞利浦dicom_如何在飞利浦色相系统中添加第三方智能灯泡
  8. tp-link tl-wr740n 虚拟服务器,TP-Link TL-WR740N无线路由器的上网设置教程
  9. 【杂乱的生活】如果IT界拉高了房价 该怨谁?
  10. 【CodeForces 1255D --- Feeding Chicken】