• css动画效果


    1: transition

    div {
    200px;
    height: 100px;
    background-color: pink;
      /* transition: 要过渡的属性 花费时间 运动曲线 何时开始; */
      /* transition: width 0.6s ease 0s, height 0.3s ease-in 1s; */
      /* transtion 过渡的意思 这句话写到div里面而不是 hover里面 */
      /*transition: all 0.6s; 所有属性都变化用all 就可以了 后面俩个属性可以省略 */
      /*默认的是ease 先快在慢*/
      transition: width 1s,height 2s;


    }
    div:hover { /* 鼠标经过盒子,我们的宽度变为400 */

       600px;
      height: 600px;
    }

    2:transform:translate()

    div {
       100px;
      height: 100px;
      background-color: pink;
      /*transform: translateX(x, y)*/
      /*变形: 移动*/
      transition: all 0.5s;

    }
    div:hover {
      transform: translateX(100px);
      /*a:active 鼠标没点击没有松开鼠标的时候触发的状态 相当于点击*/
      /*transform: translate(50px, 50px); 当我们点击之后再移动位置*/
      /*transform: translate(50px); 当我们点击之后再移动位置 x轴*/
      /*transform: translate(0, 50px); 当我们点击之后再移动位置 y轴*/
      /*只跟一个参数就是 X*/
      /*transform: translateY(100px); 只跟一个参数就是 Y*/
    }

    例子:让盒子居中

      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);

    3: transform: scale(n);

    div img {
      transition: all 0.2s;  因为图片缩放了, /*实际图片做动画 所以过渡要给img 做动画 谁做动画,谁加过渡*/
    }
    div:hover img{
      transform: scale(1.2);  /*鼠标经过盒子的时候 里面的img做 缩放*/
    }

    4: transform: rotate(360deg); transform-origin: transform-origin: top right;   /2D旋转/

    img {
      margin: 200px;
      transition: all 0.6s;
      transform-origin: top right;/*旋转的中心点,默认是中心位置,设置之后可以改变旋转的中心点*/
    }
    img:hover {

      transform: rotate(360deg); /* deg 度数*/
    }

    透视效果:perspective: 10000px

    body {
      perspective: 10000px; 视距 距离 眼睛到屏幕的距离 视距越大效果越不明显 视距越小,透视效果越明显
    }
    img {
      display: block;
      margin: 100px auto;
      transition: all .2s;
    }
    img:hover {
      transform: rotateX(360deg);
    }

    5: transform: skew(-30deg, 30deg); /倾斜/

    6:动画:

    div {
       100px;
      height: 100px;
      background-color: pink;
      animation: go 2s ease 0s infinite alternate; /*引用动画*/
      /*animation:动画名称 动画时间 运动曲线 何时开始 播放次数 是否反方向;*/
      /*动画名称是自己定义的 go google*/
      /*infinite 无限循环*/
      /*一般情况下,我们就用前2个 animation: go 2s*/
    }
    /*@keyframes go {} 定义动画*/
    @keyframes go {
      from {
      transform: translateX(0)
      }
      to {
      transform: translateX(600px)

      }
    }

    或者:

    div {
       100px;
      height: 100px;
      background-color: pink;
      /*animation: go 2s ease 0s infinite alternate; 引用动画*/
      animation: go 2s infinite; /*引用动画*/
      /*animation:动画名称 动画时间 运动曲线 何时开始 播放次数 是否反方向;*/
      /*动画名称是自己定义的 go google*/
      /*infinite 无限循环*/
      /*一般情况下,我们就用前2个 animation: go 2s*/
    }
      /*@keyframes go {} 定义动画*/
    @keyframes go {
      0% { /*起始位置,等价于 form*/
        transform: translate3d(0, 0, 0) ;
      }
      50% {
        transform: translate3d(800px, 400px, 0);

      }
      51% {
        transform: translate3d(0, 400px, 0);

        transform: rotateY(180deg);

      }
      99% {
        transform: translate3d(0, 0, 0); /*100% 相当于结束位置 to*/

        transform: rotateY(180deg);

      }
    }/* 动画结束之后会返回原来的位置!!!*/

     

    animation-play-state:paused;  /*鼠标经过暂停动画*/

  • 相关阅读:
    eas之排序接口
    eas中删除原来的监听事件添加新的监听事件
    eas之获取单据编码规则
    eas更改用户组织范围和业务组织范围
    ECMAScript 6 文档
    java网络编程介绍
    计算机网络-总结(三)
    Lombok包下常用注解
    计算机网络介绍(二)
    计算机网络介绍(一)
  • 原文地址:https://www.cnblogs.com/pxxdbk/p/12559309.html
Copyright © 2020-2023  润新知