欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

归纳CSS3的动画属性

程序员文章站 2022-03-01 20:54:21
...

(代码最下,先了解下属性)

[email protected]

用于来规定动画;
**

2.animation

这个是所有动画属性的简写模式,除了一个 animation-play-state 属性;
**

3.animation-name

顾名思义,这个是用来规定动画的名称的
**

4.animation-duration

这个是用来规定动画完成一次所要花的时间,默认的是0;
**

5.animation-timing-function

这个是用来规定在进行动画时的速度,默认的是ease(动画一开始慢速,中间加快,结束前再慢速)

其他值
①linear :动画从头到尾的速度都是一样的,也就是我们说的匀速。

②ease-in :动画以低速开始(可以理解成加速)。

③ease-out :动画以低速结束(可以理解成减速)。

④ease-in-out :动画以低速开始再以低速结束(可以理解成先加速再减速,其实和默认值没什么区别)。

⑤cubic-bezier(n,n,n,n) :在 cubic-bezier 函数中可以自己去规定自己的值。其中n的取值范围是0-1。
**

6.animation-fill-mode

这个是用来规定动画没有进行时(就是说动画播放完了,或者时动画在一开始有个延迟播放的时候),动画元素所要运用的样式;

其值有
①none :默认值。动画在动画执行之前和之后不会应用任何样式到目标元素。

②forwards :在动画执行完成后(由 动画播放的次数 决定),动画将应用该属性值,目标元素应用某些样式。

③backwards : 在动画执行之前(与 动画延迟播放的时间有关),动画将应用该属性值,目标元素应用某些样式。

④both : 动画在动画执行之前和之后会应用某些样式到目标元素。

⑤initial 设置该属性为它的默认值,就是设置了这个相当于设置了none。

⑥inherit 从父元素继承该属性。
**

7.animation-delay

这个时规定动画何时开始(也就是我们说的延迟播放)。默认是 0。
**

8.animation-iteration-count

这个是规定动画的播放次数。默认是 1。

其他值
infinite 指定动画应该播放无限次
**

9.animation-direction

如果动画定义了animation-iteration-count,那么这个就是规定动画在紧接着下次时是否会逆向播放
,默认值是normal(规定动画正常播放);
**
其他值
①reverse:规定动画会逆向的播放;

②alternate : 规定动画在奇数次是正向的播放,在偶数次的是逆向播放;

③alternate-reverse:与alternate正好相反;

⑤initial 设置该属性为它的默认值,就是设置了这个相当于设置了normal。

⑥inherit 从父元素继承该属性。

10.animation-play-state

这个是规定动画是运行动画还是暂停动画(其实平常应该用的比较少,个人感觉有点鸡肋)

属性值
①paused :规定动画暂停

②running :规定运行动画(默认值)

div
{
	width:100px;
	height:100px;
	position:relative;
	animation-name:myname;
	animation-duration:10s;
	animation-timing-function:ease-in;
	animation-delay:1s;
	animation-iteration-count:infinite;
	animation-direction:alternate;
	/* 考虑浏览器的兼容问题需要加 */
	-webkit-animation-name:myname;
	-webkit-animation-duration:10s;
	-webkit-animation-timing-function:ease-in;
	-webkit-animation-delay:1s;
	-webkit-animation-iteration-count:infinite;
	-webkit-animation-direction:alternate;
}
/***以上的简写*/
div
{
    animation: myname 10s ease-in 1s infinite alternate;
   /* 考虑浏览器的兼容问题需要加 */
    -webkit-animation: myname 10s ease-in 1s infinite alternate;
}

/*当动画比较简单时候,推荐使用from和to*/
@keyframes myname
{
	0%   { left:0px; top:0px;}
	25%  { left:400px; top:0px;}
	50%  { left:400px; top:400px;}
	75%  { left:0px; top:400px;}
	100% { left:0px; top:0px;}
}
/* 考虑浏览器的兼容问题需要加 */
@-webkit-keyframes myname 
{
	0%   { left:0px; top:0px;}
	25%  { left:400px; top:0px;}
	50%  { left:400px; top:400px;}
	75%  { left:0px; top:400px;}
	100% { left:0px; top:0px;}
}