HTML(第九章) 标签: 网页动画

HTML(第九章)

标签: 网页动画


CSS3变形是一些效果的集合
如平移、旋转、缩放、倾斜效果
每个效果都可以称为变形(transform)
Transform属性应用于元素的2D或3D转换。这个属性允许你将元素旋转,缩放,移动,倾斜等。
设置变形函数,可以是一个,也可以是多个,中间以空格分开
transform:[transform-function … …]

变形函数

translate():平移函数,基于X、Y坐标重新定位元素的位置

描述
translate(x,y)定义 2D 转换。
translateX(x)定义转换,只是用 X 轴的值。
translateY(y)定义转换,只是用 Y 轴的值。
translate(x,0)=translateX(x)作用一样
translate(0,y)=translateY(y)作用一样

scale():缩放函数,可以使任意元素对象尺寸发生变化

scale()函数可以只接收一个值,也可以接收两个值,只有一个值时,第二个值默认和第一个值相等

描述
scale(x[,y]?)定义 2D 缩放转换。
scaleX(x)通过设置 X 轴的值来定义缩放转换。
scaleY(y)通过设置 Y 轴的值来定义缩放转换。

rotate():旋转函数,取值是一个度数值
参数a单位使用deg表示
参数a取正值时元素相对原来中心顺时针旋转
rotate( )函数只是旋转,而不会改变元素的形状

skew():倾斜函数,取值是一个度数值
skew( )函数是倾斜,元素不会旋转,会改变元素的形状
可以仅设置沿着X轴或Y轴方向倾斜

描述
skew(x-angle,y-angle)定义沿着 X 和 Y 轴的 2D 倾斜转换。
skewX(angle)定义沿着 X 轴的 2D 倾斜转换。
skewY(angle)定义沿着 Y 轴的 2D 倾斜转换。
#过渡函数

transition呈现的是一种过渡,是一种动画转换的过程,如渐现、渐弱、动画快慢等
CSS3 transition的过渡功能更像是一种“黄油”,通过一些CSS的简单动作触发样式平滑过渡
transition:[transition-property transition-duration transition-timing-function transition-delay ]

  • (transition-property)
    定义转换动画的CSS属性名称
    IDENT:指定的CSS属性(width、height、background-color属性等)
    all:指定所有元素支持transition-property属性的样式,一般为了方便都会使用all
  • 过渡所需的时间( transition-duration )
    定义转换动画的时间长度,即从设置旧属性到换新属性所花费的时间,单位为秒(s)
    过渡动画函数( transition-timing-function )
    指定浏览器的过渡速度,以及过渡期间的操作进展情况,通过给过渡添加一个函数来指定动画的快慢方式
    ease:速度由快到慢(默认值)
    linear:速度恒速(匀速运动)
    ease-in:速度越来越快(渐显效果)
    ease-out:速度越来越慢(渐隐效果)
    ease-in-out:速度先加速再减速(渐显渐隐效果)
  • 过渡延迟时间( transition-delay )
    指定一个动画开始执行的时间,当改变元素属性值后多长时间去执行过渡效果
    正值:元素过渡效果不会立即触发,当过了设置的时间值后才会被触发
    负值:元素过渡效果会从该时间点开始显示,之前的动作被截断
    0:默认值,元素过渡效果立即执行

使用transition实现过渡动画的使用步骤
在默认样式中声明元素的初始状态样式
声明过渡元素最终状态样式,如悬浮状态
在默认样式中通过添加过渡函数,添加一些不同的样式
#CSS3动画
animation动画简介
animation实现动画主要由两个部分组成
通过类似Flash动画的关键帧来声明一个动画
在animation属性中调用关键帧声明的动画实现一个更为复杂的动画效果

CSS3动画的使用过程
设置关键帧

@keyframes  IDENT  {
   from {/*CSS样式写在这里*/}
   percentage {/*CSS样式写在这里*/}
   to {/*CSS样式写在这里*/}
}

@keyframes spread {
   0% {width:0;}
   33% {width:23px;}
   66% {width:46px;}
   100% {width:69px;}
 }

写兼容的时候浏览器前缀是放在@keyframes中间
例如:@-webkit-keyframes、@-moz- keyframes
调用关键帧
animation:animation-name animation–duration animation-timing-function
animation-delay animation-iteration-count animation-direction
animation-play-state animation-fill-mode;

  • animation-name 由@keyframes创建的动画名称
  • animation–duration 动画时间
  • animation-timing-function动画方式
  • animation-delay 延迟时间
  • animation-iteration-count 动画的播放次数
  • animation-direction 动画的播放方向
  • animation-play-state 动画的播放状态
  • animation-fill-mode 动画开始之前和结束之后发生的操作

CSS3动画的使用过程

  • 动画的播放次数(animation-iteration-count)
    值通常为整数,默认值为1
    特殊值infinite,表示动画无限次播放
  • 动画的播放方向(animation-direction)
    normal,动画每次都是循环向前播放
    alternate,动画播放为偶数次则向前播放
  • 动画的播放状态(animation-play-state)
    running将暂停的动画重新播放
    paused将正在播放的元素动画停下来
  • 动画发生的操作(animation-fill-mode)
    forwards表示动画在结束后继续应用最后关键帧的位置
    backwards表示会在向元素应用动画样式时迅速应用动画的初始帧
    both表示元素动画同时具有forwards和backwards的效果
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值