CSS 属性animation-iteration-count 指定动画序列在停止之前应运行多少个周期。
简写属性 animation 是同时定义所有动画相关属性的便捷方法。
animation-iteration-count 属性接受用逗号分隔的多个值。
属性值
CSS属性animation-iteration-count被定义为一个或多个以逗号分隔的值,可以是以下值之一:
infinite: 动画将无限期地继续而不停止。
<number>: 默认情况下,动画重复一次,由animation-iteration 定义-计数财产。您可以指定非整数值(例如 0.5)来播放动画循环的部分部分。负值对此属性无效。
注意:当在animation-*属性上指定多个逗号分隔值时,值按照动画名称出现的顺序应用于动画。
注意:在定义 CSS 滚动驱动动画时, animation-iteration-count 确定动画在时间轴进度过程中重复的次数。如果没有为animation-iteration-count指定值,则动画仅执行一次。 infinte 是一个有效值,但在 CSS 滚动驱动动画的情况下可能会导致动画无法工作。
语法
/* 关键字*/
animation-iteration-count = infinte;
/* <number> */
animation-iteration-count = 4;
animation-iteration-count = 3.2;
/* 多个值 */
animation-iteration-count = 4, 0, infinite;
适用范围
所有 HTML 元素,::before 和 ::after 伪元素。
CSS animation-iteration-count: 关键字值
在此示例中,属性animation-iteration-count设置为infinte,这将动画序列的重复次数定义为无限。
该属性指定动画序列的迭代次数。动画在停止之前会一直运行。
在此示例中,盒子元素根据动画的指定迭代次数无限垂直上下移动。
<html>
<head>
<style>
body {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
background-color: #f0f0f0;
}
.box {
width: 150px;
height: 150px;
font-size: 20px;
background-color: #3498db;
animation-name: slide;
animation-duration: 2s;
animation-iteration-count: infinite;
}
@keyframes slide {
0% {
transform: translateY(0);
}
50% {
transform: translateY(100px);
}
100% {
transform: translateY(0);
}
}
</style>
</head>
<body>
<div class="box">Animation Iteration Count</div>
</body>
</html>
CSS animation-iteration-count: <number> 值
在此示例中,属性动画迭代计数为设置为 2,定义动画序列的重复次数。
此属性指定动画在停止之前运行的迭代次数。
在本例中,盒子元素根据指定的动画迭代次数垂直上下移动两次。
<html>
<head>
<style>
body {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
background-color: #f0f0f0;
}
.box {
width: 150px;
height: 150px;
font-size: 20px;
background-color: #3498db;
animation-name: slide;
animation-duration: 2s;
animation-iteration-count: 2;
}
@keyframes slide {
0% {
transform: translateY(0);
}
50% {
transform: translateY(100px);
}
100% {
transform: translateY(0);
}
}
</style>
</head>
<body>
<div class="box">Animation Iteration Count</div>
</body>
</html>
CSS animation- iteration-count: 多个值
在此示例中,属性animation-iteration-count设置为多个值,即4和2,它定义了动画序列首先重复四次,然后重复两次。
此属性指定动画在停止之前运行的迭代次数。
在此示例中,盒子元素根据指定的动画迭代次数垂直上下移动。
<html>
<head>
<style>
body {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
background-color: #f0f0f0;
}
.box {
width: 150px;
height: 150px;
font-size: 20px;
background-color: #3498db;
animation-name: slide;
animation-duration: 2s;
animation-iteration-count: 4, 2;
}
@keyframes slide {
0% {
transform: translateY(0);
}
50% {
transform: translateY(100px);
}
100% {
transform: translateY(0);
}
}
</style>
</head>
<body>
<div class="box">Animation Iteration Count</div>
</body>
</html>