zoukankan      html  css  js  c++  java
  • zoom与transform:scale的区别

    一. zoom特性

    1. zoom是IE的私有属性,但目前除Firefox不支持外,其他浏览器支持尚好.

    image

    2.定义:

                zoom即变焦,可改变元素尺寸,属于真实尺寸.zoom:百分值/数值/normal(即1);

                简单示例:

    image

    二. transform: scale

    属于css3规范,IE9+的现代浏览器全部支持.

    语法为:transform: scale(x,y);只支持数值(包括负值),不支持百分比;

    衍生的属性值包括scaleX,scaleY;

    简单示例:

    image

    三.对比差异

    1. zoom的缩放是相对于左上角的;而scale默认是居中缩放;
    2. zoom的缩放改变了元素占据的空间大小;而scale的缩放占据的原始尺寸不变,页面布局不会发生变化;
    3. zoom和scale对元素的渲染计算方法可能有差异:zoom锐利,scale模糊

    简单示例:

    image

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <title>Zoom Test</title>
        <style type="text/css">
        * {
            margin: 0;
            padding: 0;
        }
        
        .wrap {
            width: 200px;
            margin: 20px;
            border: 1px solid #ccc;
        }
        
        .wrap img {
            width: 100%;
        }
        
        .zoom-large:hover {
            zoom: 1.2;
            /** 从左上方开始放大 */
        }
        
        .scale-large:hover {
            transform: scale(1.2, 1.2);
            /** 从中心点开始放大 */
        }
        
        .zoom-small:hover {
            zoom: 0.7;
        }
        
        .scale-small:hover {
            transform: scale(0.7);
        }
        </style>
    </head>
    
    <body>
        <div class="wrap zoom-large">
            <img src="demo.jpg" alt="">
        </div>
        <div class="wrap scale-large">
            <img src="demo.jpg" alt="">
        </div>
        <div class="wrap zoom-small">
            <p>呜噜噜噜</p><!-- 此处字体scale缩小会变锐利-->
            <img src="demo.jpg" alt="">
        </div>
        <div class="wrap scale-small">
            <p>呜噜噜噜</p><!-- 此处字体scale缩小会变模糊-->
            <img src="demo.jpg" alt="">
        </div>
    </body>
    
    </html>

    四:特别说明

    chrome浏览器上同时使用zoom和scale,缩放效果会叠加.

    Over~微笑

  • 相关阅读:
    enum:python实现枚举也很优雅
    jieba:我虽然结巴,但是我会分词啊
    pyquery:轻松、灵活的处理html
    lxml:底层C语言实现、高效地处理html
    shelve:极其强大的序列化模块
    Session管理之ThreadLocal
    Hibernate之Criteria
    Hibernate之list和iterator
    hibernate之createQuery与createSQLQuery
    C标签之forEach
  • 原文地址:https://www.cnblogs.com/winyou/p/5455436.html
Copyright © 2011-2022 走看看