css3详细讲解,css3 动画讲解

前言:在CSS3中,动画效果有俩种方式:

第一种:transition 属性只能通过指定属性的开始值与结束值,然后在这两个属性值之间进行平滑过渡来实现动画效果,因此只能实现简单的动画效果。transition属性功能是相同的,都是通过改变元素的“属性值”来实现动画效果。

第二种:animation 属性通过定义多个关键帧以及定义每个关键帧(@keyframes)中元素的属性值来实现复杂的动画效果。过渡

transition

设置元素当过渡效果,可以实现元素不同状态间的平滑过渡,经常用来制作动画效果。语法:transition: < property > < duration > < timing-function > < delay > ;

参数:

20190811001458_ee9d42f381140cfe6c361333b20db8b2_1.jpeg

transition-property 语法

20190811001458_ee9d42f381140cfe6c361333b20db8b2_2.jpeg

transition-duration 语法

transition-duration: time;

20190811001458_ee9d42f381140cfe6c361333b20db8b2_3.jpeg

transition-timing-function 语法

20190811001458_ee9d42f381140cfe6c361333b20db8b2_4.jpeg

理解steps

steps 函数指定了一个阶跃函数

第一个参数指定了时间函数中的间隔数量(必须是正整数)

第二个参数可选,接受 start 和 end 两个值,指定在每个间隔的起点或是终点发生阶跃变化,默认为 end。

step-start等同于steps(1,start),动画分成1步,动画执行时为开始左侧端点的部分为开始;

step-end等同于steps(1,end):动画分成一步,动画执行时以结尾端点为开始,默认值为end。

20190811001458_ee9d42f381140cfe6c361333b20db8b2_5.jpeg

transition-delay 语法

20190811001458_ee9d42f381140cfe6c361333b20db8b2_6.jpeg

.box {

/* 分别设置多个属性 */

transition: height 1s ease, width 2s linear;

}

1.1 过渡的缺点

transition的优点在于简单易用,但是它有几个很大的局限。

transition需要事件触发,所以没法在网页加载时自动发生。

transition是一次性的,不能重复发生,除非一再触发。

transition只能定义开始状态和结束状态,不能定义中间状态,也就是说只有一个开始状态和结束状态。

一条transition规则,只能定义一个属性的变化,不能控制多个属性。

Animation就是为了解决这些问题而提出的。@keyframes简介

使用animation属性定义CSS3动画需要2步:

(1)定义动画 ;(@keyframes)

(2)调用动画;(animation)

在CSS3中,在使用动画之前,我们必须使用@keyframes规则定义动画。

语法:

20190811001458_ee9d42f381140cfe6c361333b20db8b2_7.jpeg

我们可以使用@keyframes规则定义动画,但是这样定义的动画并不会自动执行,我们还需要“调用动画”,这样动画才会生效。其实这就跟JavaScript的函数一样,首先必须定义函数,然后只有调用函数,函数才会执行生效。1.2 动画animation说明:注意,animation-name 调用的动画名需要和@keyframes规则定义的动画名称完全一致(区分大小写),如果不一致将不具有任何动画效果

20190811001458_ee9d42f381140cfe6c361333b20db8b2_8.jpeg

如果动画合写的语法:animation: name duration timing-function delay iteration-count direction;

20190811001458_ee9d42f381140cfe6c361333b20db8b2_9.jpeg

20190811001458_ee9d42f381140cfe6c361333b20db8b2_10.jpeg

关键帧的自由定制案例:

20190811001458_ee9d42f381140cfe6c361333b20db8b2_11.jpeg

执行多个动画案例:

20190811001458_ee9d42f381140cfe6c361333b20db8b2_12.jpeg

Transform

transform属性应用于元素的2D或3D转换。字面上就是变形,改变的意思。

这个属性允许将元素进行旋转,缩放,移动,倾斜等。

20190811001458_ee9d42f381140cfe6c361333b20db8b2_13.jpeg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值