HTML(30)——动画

动画

实现步骤

  1. 定义动画

@keyframes 动画名称{

from{}

to{}

}
@keyframes 动画名称{

0%{}

10%{}

....

100%{}

}

2.使用动画

animation:动画名称 动画花费时间;

示例:盒子的宽度从200变到400px,两个状态一般用from to的形式

复制代码
  <style>
    .box {
      width: 200px;
      height: 100px;
      background-color: pink;
      animation: change 2s;
    }

    @keyframes change {
      from {
        width: 200px;
      }

      to {
        width: 400px;
      }
    }
  </style>
</head>

<body>
  <div class="box"></div>
</body>

多个状态变化:

复制代码
  <style>
    .box {
      width: 200px;
      height: 100px;
      background-color: pink;
      animation: change 2s;
    }

    @keyframes change {
      10% {
        width: 200px;
      }

      50% {
        width: 400px;
      }

      100% {
        width: 800px;
      }
    }
  </style>
</head>

<body>
  <div class="box"></div>
</body>

animation属性

animation是复合属性,包括:

animation: 动画名称 动画时长 速度曲线 延迟时间 重复次数 动画方向 执行完毕时状态

注意:

  • 动画名称和动画时长必须赋值
  • 取值不分先后顺序
  • 如果有两个时间值,第一个时间表示动画时长,第二个时间表示延迟时间

同时也可以拆分成多个属性

属性 作用 取值
animation-name 动画名称
animation 动画时长
animation 延迟时间
animation 动画执行完毕时状态 forwards:最后一帧状态 backwards:第一帧状态
animation 速度曲线 step(数字):逐帧动画
animation 重复次数 infinite为无限循环
animation 动画执行方向 alternate为反向
animation 暂停动画 paused为暂停,通常配合hover使用
相关推荐
Csvn7 小时前
WASM
前端
修己xj9 小时前
我用 AI 给自己写了一个 Markdown 编辑器,然后把它开源了
前端
FRing039 小时前
vue2干货总结2(v-bind、v-for、v-model、指令修饰符、v-bind操作class和style)
开发语言·前端·vue.js·vue2
幸运小猿9 小时前
模拟慢上传-处理超时重试image 丢失线上问题
前端·javascript·html
moshuying11 小时前
网购能买Token了!
前端
h_654321011 小时前
echarts实现柱状图加一条横线
前端·echarts
风骏时光牛马11 小时前
生成一个后端标题,只需要一个标题,不需要其他的任何文本。
前端
子非鱼@Itfuture11 小时前
关于前后端联调中登录状态/登录信息失效?
java·前端
郭小李11 小时前
openFeign入门
java·开发语言·前端
馒头不想说话11 小时前
AI当运营,帮你省人力
前端