CSS 属性

CSS 属性animation-play-state 检查动画是正在运行还是处于暂停状态。

如果暂停的动画恢复,它将从暂停的位置继续,保持进度,而不是从动画序列的第一帧重新开始。

属性值

CSS 属性animation-play-state 可以具有以下值之一:

  • running: 动画当前正在进行中。

  • paused: 动画当前处于暂停状态。

注意:当在animation-*属性上指定多个逗号分隔值时,这些值将按照animation-names的顺序应用于动画

语法

animation-play-state = <single-animation-play-state>#  

<single-animation-play-state> = running | paused 

适用范围

所有 HTML 元素,::before 和 ::after 伪元素。

CSS Animation-play-state: 运行状态

  • 在下面的示例中,animation-play-state 属性控制动画是否正在主动运行或默认暂停。

  • 它设置为运行,动画保持运行。

  • 它允许动画开始当光标悬停在其上时,圆圈会随着缩放效果而脉动。

<html>
<head>
<style>
   body {
      display: flex;
      justify-content: center;
      align-items: center;
      height: 250px;
      margin: 0;
      background-color: #f0f0f0;
   }
   .circle-demo {
      width: 100px;
      height: 100px;
      background-color: #ff6347;
      border-radius: 50%;
      animation-name: pulse;
      animation-duration: 1s;
      animation-iteration-count: infinite;
      animation-play-state: running;
   }
   
   @keyframes pulse {
      0% {
         transform: scale(1);
      }
      50% {
         transform: scale(1.8);
      }
      100% {
         transform: scale(1);
      }
   }
</style>
</head>
<body>
   <div class="circle-demo"></div>
</body>
</html> 

CSS Animation-play-state: 暂停状态

  • 在下面的示例中,animation-play-state 属性控制动画是主动运行还是默认暂停。

  • 已设置暂停,动画保持暂停状态。

  • 它不允许动画开始并继续。

<html>
<head>
<style>
   body {
      display: flex;
      justify-content: center;
      align-items: center;
      height: 200px;
      margin: 0;
      background-color: #f0f0f0;
   }
   .circle-demo {
      width: 100px;
      height: 100px;
      background-color: #ff6347;
      border-radius: 50%;
      animation-name: pulse;
      animation-duration: 1s;
      animation-iteration-count: infinite;
      animation-play-state: paused;
   }
   
   @keyframes pulse {
      0% {
         transform: scale(1);
      }
      50% {
         transform: scale(1.8);
      }
      100% {
         transform: scale(1);
      }
   }
</style>
</head>
<body>
   <div class="circle-demo"></div>
</body>
</html> 

CSS Animation-play-state: 两种状态

  • 在下面的示例中,animation-play-state 属性控制动画默认是主动运行还是暂停.

  • 最初设置为暂停,动画保持静态,直到悬停在上方,触发状态更改为运行。

  • 它允许动画开始,并且当光标悬停在圆圈上时,圆圈会以缩放效果脉动。

<html>
<head>
<style>
   body {
      display: flex;
      justify-content: center;
      align-items: center;
      height: 250px;
      margin: 0;
      background-color: #f0f0f0;
   }
   .circle-demo {
      width: 100px;
      height: 100px;
      background-color: #ff6347;
      border-radius: 50%;
      animation-name: pulse;
      animation-duration: 1s;
      animation-iteration-count: infinite;
      animation-play-state: paused;
   }
   .circle-demo:hover {
      animation-play-state: running;
      }
      @keyframes pulse {
      0% {
      transform: scale(1);
      }
      50% {
      transform: scale(1.8);
      }
      100% {
      transform: scale(1);
      }
   }
</style>
</head>
<body>
<div class="circle-demo"></div>
</body>
</html>