css之动画

css要实现动画,需要animation属性

设置动画的步骤

1.定义动画

语法格式

使用@keyframes定义动画

@keyframes 动画名称 {

百分比 {

样式名:样式值;

}

}

第二步是调用动画

在某个元素上应用动画,包含以下属性:

  • animation-name 使用@keyframes定义的动画名称

  • animation-duration 持续时间,默认是 0

  • animation-timing-function 速度曲线,默认是 ease

  • animation-delay 延时时间,默认是 0

  • animation-iteration-count 播放次数,默认是 1,可以是数字,也可以是infinite(无限次)

  • animation-direction 播放方向,默认是 normal表示正常播放,alternate表示正反向轮流播放

    比如要实现一个div盒子,类名是d1,一开始宽高都是100像素,过一段时间变为宽高200像素,再过一阵时间宽高变为300像素
    这里html代码省略
    首先是定义动画,动画名称是change,在动画进度50%时变为宽高200px,100%时变为300px

    css 复制代码
    @keyframes change {
    			0% {
    				width: 100px;
    				height: 100px;
    			}
    
    			50% {
    				width: 200px;
    				height: 200px;
    			}
    
    			100% {
    				width: 300px;
    				height: 300px;
    			}
    		}

    接着开始设置动画,动画持续时间是5s,速度是匀速,延迟2s,播放次数为3次,正反来回播放,css代码如下

    css 复制代码
    		.d1 {
    			width: 100px;
    			height: 100px;
    			border:1px solid red;
    
                /*设置动画名*/
    			animation-name:change;
                
                /*动画持续时间*/
    			animation-duration: 5s;
                
                /*动画播放速度*/
    			animation-timing-function: linear;
                
                /*动画延迟时间*/
    			animation-delay:2s;
                
                /*动画播放次数*/
    			animation-iteration-count:3;
                  /*动画播放顺序*/
    			animation-direction: alternate;
    		}
相关推荐
ganshenml17 分钟前
【Web】证书(SSL/TLS)与域名之间的关系:完整、通俗、可落地的讲解
前端·网络协议·ssl
这是个栗子1 小时前
npm报错 : 无法加载文件 npm.ps1,因为在此系统上禁止运行脚本
前端·npm·node.js
HIT_Weston2 小时前
44、【Ubuntu】【Gitlab】拉出内网 Web 服务:http.server 分析(一)
前端·ubuntu·gitlab
华仔啊2 小时前
Vue3 如何实现图片懒加载?其实一个 Intersection Observer 就搞定了
前端·vue.js
JamesGosling6662 小时前
深入理解内容安全策略(CSP):原理、作用与实践指南
前端·浏览器
不要想太多2 小时前
前端进阶系列之《浏览器渲染原理》
前端
g***96902 小时前
Node.js npm 安装过程中 EBUSY 错误的分析与解决方案
前端·npm·node.js
七喜小伙儿3 小时前
第2节:趣谈FreeRTOS--打工人的日常
前端
我叫张小白。3 小时前
Vue3 响应式数据:让数据拥有“生命力“
前端·javascript·vue.js·vue3
laocooon5238578863 小时前
vue3 本文实现了一个Vue3折叠面板组件
开发语言·前端·javascript