css_22_过渡&动画
在CSS中,过渡和动画可以让网页的元素在状态改变时产生平滑的效果,而不是突兀的变化。
过渡效果可以通过transition
属性来实现,该属性通常包括以下几个部分:
transition-property
: 指定应用过渡效果的CSS属性名。transition-duration
: 指定过渡效果的持续时间。transition-timing-function
: 控制过渡的速度曲线,默认为ease
。transition-delay
: 定义过渡效果何时开始。
例如,如果你想要在鼠标悬停时,改变元素的颜色,并且给它一个过渡效果,可以这样写:
div {
background-color: blue;
transition-property: background-color;
transition-duration: 0.5s;
transition-timing-function: ease-in-out;
}
div:hover {
background-color: red;
}
而动画效果则通过@keyframes
规则和animation
属性来实现:
@keyframes
: 创建动画序列。animation-name
: 引用@keyframes
的名称。animation-duration
: 动画完成一个周期所需的时间。animation-timing-function
: 动画的速度曲线。animation-iteration-count
: 动画重复次数。animation-direction
: 动画在循环中是否反向。
例如,创建一个旋转的动画:
@keyframes rotate {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
div {
animation-name: rotate;
animation-duration: 2s;
animation-iteration-count: infinite;
}
这样就定义了一个无限循环,不断旋转的动画。
评论已关闭