• css010 css的transform transition和animation


    css010 csstransform transitionanimation

    看着没有一个能想起他们是干什么的。。

    1、         Transform

       Transform(变形)

    rotate(旋转)

    transform:rotate(10deg);      顺时针旋转10度   (deg角度的度量单位)

    scale(缩放)

    transform: scale (2);         scale(缩放)调整元素的尺寸 (2代表倍数)

     transform: scale (2,5);        宽变为两倍 高变为5倍

     transform: scalex (2);         宽度变为2倍 高度不变

    scale是缩放元素,当它后面的值为负数时可以让一个元素翻转

    transform: scalex (-1);  从左往右翻。

    transform: scalex (-1,1);  沿Y轴翻转。

    transform: scalex (1,-1);  沿X轴翻转。

    translate( 元素实现向某一个方向移动)

    translate:x y;  (x值为负值时-向左移动。Y为负值时-向上移动)

    skew(倾斜)

    transform:skew(45deg 0);  沿X轴倾斜

    transform:skew(0 45deg);  沿Y轴倾斜

    多个transform函数共用

    transform:rotate(45deg) scale(2);

    origin (根源,起点一般默认为元素中心点

        transform-origin:left top;

    2、         transition   (过渡 变化 转化)

    一、为了使transition生效,需要做以下事情:

    1、两个样式:一个样式代表元素最初的样子,另一个样式代表最终的样子

    2、Transition属性:

    3、触发器

    二、如何添加transition

    Css的transition的核心是用四个属性控制要移动化战士哪些属性、动画过程要多久,使用什么类型的动画,以及动画开始前要不要延迟。

    transition需要添加供应商前缀才能正常在浏览器中使用。(p389  p390

    以下例子是让鼠标经过时背景色变为蓝色,并且变化持续一秒。

    1、.navButton{

    background-color :orange;

    transition-property:background-color;

    transition-duration:1s;

    }

    .navButton:hover{

          background-color:blue

    }

      

    三、四个属性分别是什么??

    1、transition-property  ,定义了要以动画形式战士哪些属性

       关键字:all、(color、background-color、boder-color)

    2、transition-duration   定义了动画要持续多久才结束(一般以秒或者毫秒为单位)

     transition-duration:1s;

    还可以对每一个要定义动画的属性就行时间限定:

    transition-property:color, background-color, boder-color;

    transition-duration:1s, .75s ,2s;

    3、transition-timing-function 控制动画的速度:可为下面四个值:

             linera 、ease(默认) 、ease-in、 ease-out、ease-in-out

             transition-timing-function: cubic-bezier(.20, .96, .74, .07)

         4、transition-delay    延迟启动transition

              transition:2s;

    四、transition的快捷方式

         transition属性可以一次性把transition-property  transition-duration   transition-timing-function   transition-delay都表达出来。称为他的快捷属性

       transition: all 1s ease-in 5s;

       transition: background-color 1s ;等等

    3、         Animation 创建动画

    一、   创建动画的两个步骤:

    1、定义动画(包括创建关键帧)

    2、将动画运用到元素上

    二、   如何定义关键帧

       定义关键帧的基本结构:

    @keyframes animationName{

        from{/* list css properties here*/}

        to{/* list css properties here*/}

    }

    from  开始帧。to  结束帧

    @keyframes fadein{

        from{opacity:0;}

        to{opacity:1;}

    }

    @keyframes fadein{

        from{ background-color:red; }

        50%{ background-color:blue; }

        to{ background-color:orange;}

    }

    可以用0%替代from ,100%替代to;

    三、   如何应用animation

    1、可以给伪类应用动画,包括   :hover  :active  :target  :focus

    2、用@keyframes规则创建淡入动画:

       @keyframes fadeIn{  from{opacity:0;}   to{ opacity:1;}  }(为单个属性创建动画)

    (为多个属性创建动画)

    @keyframes fadeIn{ 

    from{

    opacity:0;

    color:red;

    50%;

    }

    to{

     opacity:1;

     color:blue;

    100%;

    }

     }

    3、将动画应用到<div>标签的样式

    .announcement{

       animation-name:fadeIn;

       animation-duration:1s;

    }

    animation-name 告诉浏览器使用哪一个动画

    animation-duration 告诉浏览器动画持续的时间

    四、   如何给animation定时

      

    五、   如何完成animation

    transition 是只能运行一次的动画

    animation 可以运行多次的动画

    animation-iteration-count:10;  (将动画运行十次)

    animation-direction  控制动画运行的方向:值可为:alternate

    六、   animation快捷方式

    .fade{

       animation-name:fadeout;

       animation-duration:2s;

       animation-timing-function:ease-in-out;

       animation-iteration-count:2;

       animation-direction:alternate;

       animation-delay:5s;

       animation-fill-mode:forwards;

    }

    可以写成下面一句话:

    .fade{ animation:fadeout 2s ease-in-out 2 alternate 5s forwards }

    (只有名称和时间是必要的,其他的都是可选的。)

    七、   如何暂停animation

         animation-play-state:running/paused;

      .fade:hover{ animation-play-state: paused; }

  • 相关阅读:
    回调函数
    TFS(Team Foundation Server)介绍和入门
    android widget 开发实例 : 桌面便签程序的实现具体解释和源代码 (上)
    非常多人不愿意承认汉澳sinox已经超过windows
    vim: 自己定义颜色主题(colorscheme)
    银行家算法
    一道百度架构题
    select poll使用
    LDAPserver的安装
    在eclipse中启动tomcat时报错:could not create java virtual machine... a fatal error...
  • 原文地址:https://www.cnblogs.com/lal-fighting/p/5107461.html
Copyright © 2020-2023  润新知