zoukankan      html  css  js  c++  java
  • CSS3动画

    transform

    transform描述元素的静态样式,设置元素在二维或三维坐标下的位移,旋转,透视,缩放等属性。所有属性:https://www.w3school.com.cn/cssref/pr_transform.asp

    常用属性:

    perspective

    3D图像到屏幕的距离,以像素为单位(可作为独立CSS属性)

    perspective-origin

    3D图像的开始位置,如perspective-origin:50% 50%;为图像在页面中间。(可作为独立CSS属性)

    translate(x,y)/transla3d(x,y,z)

    图像在二维/三维坐标的位置

    rotate(angle)

    旋转:
    rotate(ndeg)元素绕中心旋转
    rotateX(ndeg)元素绕X轴旋转
    rotateY(ndeg)元素绕Y轴旋转
    rotateZ(ndeg)元素绕Z轴旋转

    scale(x,y)/scale3d(x,y,z)

    图像在对应方向缩放。

    transform-origin

    图像变化的基准:bottom,top,坐标等。

    transition

    (简写属性)通常和hover等配合使用,由事件触发。
    transition:property duration timing-function delay;
    transition: transform 1s linear 1s;
    定义了动画的属性,动画完成时间,过渡效果,延迟时间。

    常用速度曲线:
    linear:匀速(cubic-bezier(0,0,1,1))
    ease:开始和结束的时候慢速,中间变快(cubic-bezier(0.25,0.1,0.25,1))
    ease-in:慢速开始(cubic-bezier(0.42,0,1,1))
    ease-out:慢速结束(cubic-bezier(0,0,0.58,1))
    ease-in-out:慢速开始和结束(cubic-bezier(0.42,0,0.58,1))
    cubic-bezier为贝塞尔曲线

    animation

    (简写属性)必须结合@keyframes使用
    animation:name duration timing-function delay iteration-count direction fill-mode;
    名称,播放时间,过渡效果,延迟,播放次数,方向,结束方式

    @keyframes drop{//动画名称
      0%{opacity: 0;}
      70%{transform: translateY(700px);}
      100%{transform: translateY(650px); opacity: 1;}
    }
    //在需要动画的元素上添加动画
    animation: drop 0.5s ease forwards;
    

    animation和transition的区别

    1. 触发条件不同,transition通常和事件配合触发,animation加载后立即触发
    2. animation可设置循环
    3. animation可设定每一帧动画,transition只能设置头尾,animation可在不同帧单独设置变化的属性,transition所有属性要一起设置
    4. transition与js的交互更紧密。
  • 相关阅读:
    通过mixins方法处理调取服务器时间
    记录个人对vuex的简单理解
    利用弹性布局实现垂直居中
    vue.set的适用方法
    深拷贝和浅拷贝的实现方法
    Maven安装步骤
    build tools
    Git
    Url和Uri的区别
    函数式编程语言
  • 原文地址:https://www.cnblogs.com/xuewting/p/13642619.html
Copyright © 2011-2022 走看看