过渡
通过过渡可以指定一个属性发生变化时的切换方式
 通过过渡可以创建一些非常好的效果,提升用户的体验
属性值
transition-property:指定要执行过渡的属性
多个属性间使用,隔开;
如果所有属性都需要过渡,则使用all关键字;
大部分属性都支持过渡效果;
注意过渡时必须是从一个有效数值向另外一个有效数值进行过渡;
transition-duration:指定过渡效果的持续时间
时间单位:s和ms(1s=1000ms)
transition-delay:过渡效果的延迟,等待一段时间后在执行过渡
 transition-timing-function:过渡的时序函数
linear匀速运动
ease 默认值,慢速开始,先加速后减速
ease-in 加速运动
ease-out 减速运动
ease-in-out 先加速后减速
cubic-bezier()来指定时序函数 https://cubic-bezier.com
steps()分步执行过渡效果,可以设置第二个值:
end,在时间结束时执行过渡(默认值)
start,在时间开始时执行过渡
transition:可以同时设置过渡相关的所有属性
 只有一个要求,如果要写延迟,则两个时间中第一个是持续时间,第二个是延迟时间
动画
动画和过渡类似,都是可以实现一些动态的效果,不同的是
 过渡需要在某个属性发生变化时才会触发
 动画可以自动触发动态效果
 设置动画效果,必须先要设置一个关键帧,关键帧设置了动画执行每一个步骤
@keyframes test {
    from {
        margin-left: 0;
    }
    to {
        margin-left: 900px;
    }
}
animation-name 指定动画的关键帧名称
 animation-duration:指定动画效果的持续时间
 animation-delay:动画效果的延迟,等待一段时间后在执行动画
 animation-timing-function:动画的时序函数
 animation-iteration-count 动画执行的次数
 infinite 无限执行
 animation-direction 指定动画运行的方向
 normal 从from向to运行,每次都是这样,默认值
 reverse 从to向from运行,每次都是这样
 alternate 从from向to运行,重复执行动画时反向执行
 alternate-reverse 从to向from运行,重复执行动画时反向执行
 animation-play-state 设置动画的执行状态
 running 动画执行,默认值
 paused 动画暂停
animation-fill-mode 动画的填充模式
none 动画执行完毕,元素回到原来位置,默认值
 forwards 动画执行完毕,元素会停止在动画结束的位置
 backwards 动画延时等待时,元素就会处于开始位置
 both 结合了forwards和backwards
/* animation-name: test;
animation-duration: 2s;
animation-delay: 2s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
animation-fill-mode: both; */
animation: test 2s 2s linear infinite alternate both;
 
 
                     
            
        













 
                    

 
                 
                    