1、CSS3动画
用关键词from、to,或者用比分比来定义
定义动画语法:
@keyframes name {from|0%{css样式}to|100%{css样式}}
执行动画语法:
animation: name duration timing-function delay iteration-count direction fill-mode play-state;name:要执行的动画名称duration:设置动画的持续时间,单位可以是秒(s)和毫秒(ms)timing-function:设置动画的速率ease:逐渐变慢(默认)linear:匀速ease-in:加速ease-out:减速ease-in-out:先加速后减速delay:延迟执行,单位可以是秒(s)和毫秒(ms)iteration-count:循环次数,infinite为无限次direction:播放的方向normal:向前播放(默认值)alternate:偶数次向前播放,奇数次向反方向播放fill-mode:none:不修改样式,forwards 当动画结束后,修改元素样式为最后一帧的样式backwards:当动画开始时,修改元素样式为第一帧样式。比如设置了等待时间,等待时间中也会修改元素样式为第一帧样式both:遵循forwards和backwards 的规则,开始后结束都修改样式。play-state:播放状态,running运行中,paused停止播放
示例代码:
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>CSS3新特性-动画</title><style>div{width: 100px;height: 100px;box-shadow: 10px 10px 10px gray;/* 执行动画 */animation: myDH 3s linear 0s infinite normal none;}div:hover{animation-play-state: paused;}@keyframes myDH {0%{background-color: rebeccapurple;}50%{background-color: green;}100%{background-color: rebeccapurple;}}</style></head><body><div></div></body></html>
2、呼吸动画效果
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>CSS3新特性-呼吸动画</title><style>div{width: 100px;height: 100px;margin: 40px auto;background-color: #2b92d4;border-radius: 5px;box-shadow: 0 1px 2px rgba(0, 0, 0, .3);animation: breathe 2700ms ease-in-out 0s infinite alternate none;}@keyframes breathe {0%{opacity: 0.2;box-shadow: 0 1px 2px rgba(255, 255, 255, .1);}50%{opacity: 0.5;box-shadow: 0 1px 2px rgba(18, 190, 84, .76);}100%{opacity: 1;box-shadow: 0 1px 30px rgba(59, 255, 255, 1);}}</style></head><body><div></div></body></html>
