zoukankan      html  css  js  c++  java
  • CSS3 Animation 简单总结

    CSS3 变形(Transformation)

    /* 该属性下所有的书写规则都需写这三个前缀*/
    -webkit-transform/-moz-transform/-o-transform
    rotate

    /* 元素逆时针旋转90度 */
    rotate(-90deg);
    

    Rotate(旋转)允许你通过传递一个度数值来转动一个对象。
    IE有这方面的滤镜:图形旋转滤镜。它可以有4个旋转值:0, 1, 2,和3。filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);

    scale

    /* 宽和高都会被放大双倍 */
    scale(2);
    /* 宽会是双倍,而高度保持不变 */
    scale(2, 1);
    /* nav的宽度将是双倍,并且水平翻转,但是高度保持不变 */
    scale(-2, 1);
    

    scale(缩放)同时采用宽和高两个值,这些值可以是正数、负数和小数。正数放大倍数,负数反转,小数缩小倍数。支持小数点。
    IE不支持该属性。

    translate

    /* 元素向左移动10像素并向下移动20像素 */
    translate(10px, 20px);
    

    translate(移动)在原有布局定位的基础上移动,不影响其他元素布局。IE不支持该属性。

    skew
    /* 元素x轴向上倾斜30度,y轴向左倾斜10度 */
    skew(30deg, -10deg);
    

    skew(倾斜)在原有布局定位的基础上移动,不影响其他元素布局。IE不支持该属性。
    根据倾斜角度的不同,元素可能会被拉长也可能会被缩小。

    上述css3动画都可以链式书写eg:

    translate(10, 25) rotate(90deg) scale(2, 1);
    

    使用transform-origin(-moz-transform-origin/-webkit-transform-origin/-o-transform-origin)可以指定transform变形的起点。eg:

    /*以元素左上角的点为基准*/
    transform-origin: 0 0;
    /*以元素右下角的点为基准*/
    transform-origin:100% 100%;
    /*以元素左上角的点为基准*/
    transform-origin:top left;
    

    CSS3 转换(transition)

    一个涉及到CSS属性的基本的转换就是定义和移动一个元素从它的静止状态(比如,深蓝色背景)到它的hover或者激活状态(比如,浅蓝色背景)。

    转换可以和变形同时使用(以及引发诸如:hover 或:focus事件)以创建一些动画。淡出背景色彩,滑动一个元素以及让一个对象旋转都可以通过CSS转换实现。

    /*一下transition都需要添加这些前缀*/
    -webkit-transition-property/-moz-transition-property/-o-transition-property
    
    transition-property
    /*指定元素background-color的样式变化时使用转换动画*/
    transition-property:background-color;
    

    指定转换的CSS属性名称

    transition-duration
    /*指定元素转换时间需要2s*/
    transition-duration:2s;
    

    定义转换花费的时间(从旧属性换到新属性花费的时间)

    transition-timing-function
    /*元素转换时的动画效果为ease-in*/
    transition-timing-function:ease-in;
    

    过度效果。指定转换过程中的中间值。可以用cubic-bezier指定。当然有几个常用的内置值:ease | linear | ease-in | ease-out | ease-in-out。

    transition-delay
    /*元素转换时延迟2s*/
    transition-delay:2s;
    

    转换延迟的时间。时间可以为正整数、负整数和零,非零的时候必须设置单位是s(秒)或者ms(毫秒),为负数的时候,转换的动作会从该时间点开始显示,之前的动作被截断。

    CSS3 动画(animation)

    CSS3 动画可以将之前的转换(transition)以帧的形式“动”起来。

    /* 该属性下所有的书写规则都需写这三个前缀*/
    -webkit-animation/-moz-animation/-o-animation
    animation-name

    动画的名称。必须,以后者keyframes结合使用。

    animation-duration

    定义动画播放一次需要的时间。默认为0,其实是必须的否则没有效果。

    animation-timing-function

    定义动画播放的方式,参数linear(线性常用)/ease (默认动画函数)/ease-in/ease-out/ease-in-out/cubic-bezier(x1, y1, x2, y2)/step-start。
    详细可自行找资料。

    animation-delay

    定义动画开始的时间,默认0。

    animation-iteration-count

    定义循环的次数,infinite即为无限次。默认是1。

    animation-direction

    动画播放的方向,normal(默认)/alternate(第偶数次向前播放,第奇数次向反方向播放)。

    定义为元素animation样式后,需要定义动画keyframes。eg:

    /*动画名为abc的运动帧,同样需要加前缀eg:@-moz-keyframes*/
    @keyframes abc{
    0   {-moz-transform:rotate(0deg);}
    25% {-moz-transform:rotate(90deg);}
    50% {-moz-transform:rotate(180deg);}
    75% {-moz-transform:rotate(270deg);}
    100%{-moz-transform:rotate(360deg);}
    }
    
  • 相关阅读:
    3星|《财经》2017年第27期:比亚迪正在计划将其电池产能放开给市场
    4星+|《赋能:打造应对不确定性的敏捷团队》:海豹突击队学习伊拉克“基地”组织的组织形式并且最终战胜对方的故事
    2星|《腾讯产品法》:标题党,作者只有QQ手机助手的短期产品经验
    1星|《进阶》:文风模仿古龙,内容是居委会大妈级别
    4星|《好战略,坏战略》:理论不错,案例偏旧有事后诸葛亮的嫌疑,没敢预测未来
    2星|《下一个倒下的会不会是华为(终极版)》:小报软文风格,篇幅较长但有效信息太少,缺乏全面宏观的视角和数据
    4星|《心流:最优体验心理学》:如何在工作生活中发现幸福:找到意义与目标并且专注其中
    3星|《经济学泰斗的管理思路》:对金融专家来说,一份赏心悦目的报告在效果上相当于企业年收入增加20%。
    String.IndexOf String.IndexOf String.Substring
    Debug 和 Release 编译方式的本质区别
  • 原文地址:https://www.cnblogs.com/webu/p/2794767.html
Copyright © 2011-2022 走看看