CSS 动画是一种可用于使元素的属性值逐渐变化的效果。动画可以应用于任何 CSS 属性,包括宽度、高度、颜色、背景、边框等。
animation
属性的语法如下:
示例:
@keyframes animationName{
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
.example1{
width: 100px;
height: 100px;
background-color: #3498db;
animation: animationName 2s linear infinite; /* 应用动画,持续2秒,无限循环,线性过渡 */
}
<div class="example1"></div>
效果:
@keyframes rotate
定义了一个名为 rotate
的关键帧动画,从初始状态(0度旋转)到结束状态(360度旋转)。.animated-box
元素应用了这个动画,通过 animation
属性指定了动画名称、持续时间、循环方式等。CSS 动画和 CSS 过渡都是可用于使元素的属性值逐渐变化的效果。两者的主要区别在于:
CSS 过渡是一种可用于使元素的属性值逐渐变化的效果。过渡可以应用于任何 CSS 属性,包括宽度、高度、颜色、背景、边框等。过渡的效果可能会因浏览器和设备的不同而有所不同,过渡的性能可能会因过渡的复杂程度而有所不同。
示例:
.example1{
width: 200px;
height: 200px;
background-color: #3498db;
transition: background-color 0.5s ease; /* 定义过渡属性和时间 */
}
.example1:hover{
background-color: #e74c3c;
}
<div class="example1"></div>
效果: