如何使用 CSS 自定义属性播放和暂停 CSS 动画?

ID:13711 / 打印

如何使用 css 自定义属性播放和暂停 css 动画?

在 SS 中,动画是为网站添加视觉效果的有效方式。然而,有时我们希望更好地控制这些动画的播放时间和方式。在这里,我们将探讨如何使用 CSS 自定义属性来播放和暂停 CSS 动画。

在继续之前,我们应该知道 CSS 动画可以使用关键帧或通过在两个或多个状态之间转换来创建。

语法

@keyframes animation-name {    /* define the animation steps */ } 

我们通过给动画命名并使用@keyframes关键字来定义动画。在大括号内,我们使用百分比或关键字值定义动画的步骤。

CSS 中的播放和暂停动画

在 CSS 中,播放和暂停动画是指控制动画元素的能力。这是一种为网站添加动感和视觉趣味的方法。

立即学习“前端免费学习笔记(深入)”;

播放和暂停动画允许我们控制这些动画的播放时间和方式。如果我们想让用户能够在需要集中注意力时暂停动画,这会非常有用。

在CSS中,我们可以使用animation-play-state属性来控制动画是运行还是暂停。默认情况下,animation-play-state 属性设置为running,这意味着动画将在页面加载时自动播放。但是,我们可以使用 CSS 更改此属性的值以随时启动或停止动画。

要使用 CSS 创建播放和暂停动画效果,您可以按照以下步骤操作 -

第 1 步:定义动画

第一步,我们需要定义我们想要控制的动画。我们可以使用关键帧创建一个简单的动画。

第 2 步:创建播放和暂停效果

定义动画后,我们需要创建控制动画的元素。我们可以使用任何 HTML 元素,例如按钮、复选框和悬停效果。

第 3 步:定义 CSS 自定义属性

现在,我们需要定义保存动画状态的 CSS 自定义属性。我们可以为自定义属性使用任何名称,但在本示例中,我们将使用 --animation-play-state 和 --animation-timingfunction。

我们将通过示例来理解上述概念。

示例 1

下面是如何创建简单的幻灯片动画的示例。

<!DOCTYPE html> <html> <head>    <style>       body { text-align: center;}       .box {          display: flex;          height: 80px;          width: 80px;          border-radius: 10%;          color: white;          background-color: green;          position: relative;          animation: my-animation 6s infinite;       }       .box:hover { animation-play-state: paused;}       @keyframes my-animation {          from {left: 0px;}          to {left: 400px;}       }    </style> </head>    <body>       <h2>A simple animation of a slide</h2>       <div class="box">Mouse Hove to give me a break.</div>    </body> </html> 

示例 2

这是如何使用 CSS 自定义属性播放和暂停 CSS 动画的又一个示例。

<!DOCTYPE html> <html> <head>    <style>       body { text-align: center; }       .box {          align-items: center;          background-color: green;          display: flex;          height: 80px;          width: 80px;          margin-top: 10px;          border-radius: 10%;       }       .my-slide {--animdur: 5s; --animn: slide; }       [my-animation] {          animation: var(--animn, none) var(--animdur, 0s) var(--animtf,          linear) var(--animic, infinite) var(--animdir, alternate) var(--animps,          running);       }       [my-animation-pause]:checked~[my-animation] {          --animps: paused;       }       @keyframes slide {          from { margin-left: 0%;}          to {margin-left: calc(100% - 80px);}       }    </style> </head>    <body>       <input type="checkbox" my-animation-pause id="move" class="#" />       <label for="move" class="#">Check Me to play/paus</label>       <div class="box my-slide" my-animation="stop"></div>    </body> </html> 

结论

使用CSS自定义属性来播放和暂停CSS动画提供了一种简单有效的方法来控制网页上的动画。在第一个示例中,我们使用关键帧动画来定义动画,并使用animation-play-state属性来控制其状态。在第二个示例中,我们使用过渡动画并更改自定义属性的值来控制动画的状态。这两种技术都提供了一种创建可以使用 CSS 轻松控制的动态动画的方法。

上一篇: CSS 轮廓样式属性
下一篇: 在CSS中使用position属性的:before伪元素的各种技巧

作者:admin @ 24资源网   2024-10-18

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。