如何自动重新启动 CSS 动画

2023-11-30

我是网页设计新手,在 CSS 方面面临一些问题。其实我是在克隆amazon.com并创建一个带有滑动动画的滑块,但动画只运行一次。我想让它无限运行。这是我的代码:

HTML - index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="css/header.css">
    <link rel="stylesheet" href="css/slider.css">
    <title>Amazon-Great Indian Sale</title>
</head>
<body>
    <header>
        <nav>
            <div class="logo">
                <a href="/index.html"><img src="img/logo.svg" alt="logo" width="138px"></a>
            </div>
            <div class="search">
                <input type="text">
                <button>Search</button>
            </div>
            <ul>
                <div class="nav-items">
                    <li><a href="#">Mobiles</a></li>
                    <li><a href="#">Best Sellers</a></li>
                    <li><a href="#">Electronics</a></li>
                    <li><a href="#">Luggage</a></li>
                    <li><a href="#">Fashion</a></li>
                    <li><a href="#">Software</a></li>
                    <li><a href="#">Sports</a></li>
                    <li><a href="#">Hardware</a></li>
                    <li><a href="#">Furnitures</a></li>
                </div>
            </ul>
        </nav>
    </header>
    <main>
        <div class="slider" id="slide">
            <img src="img/slider_img1.jpeg">
            <img src="img/slider_img2.jpg">
            <img src="img/slider_img3.jpg">
            <img src="img/slider_img4.jpg">
        </div>
    </main>
</body>
<script src="js/slider.js"></script>
</html>

CSS - slider.css

.slider{
    display: flex;
    width: 100%;
    height: 37vh;
    overflow: hidden;
}
.slider img{
    min-width: 100%;
    min-height: 100%;
    animation: slide1 1s 2s forwards, slide2 1s 4s forwards, slide3 1s 6s forwards, slide4 1s 8s forwards;
    transform: translate(0%);
}
@keyframes slide1 {
    0%{
        transform: translate(0%);
    }
    100%{
        transform: translate(-100%);
    }
}
@keyframes slide2 {
    0%{
        transform: translate(-100%);
    }
    100%{
        transform: translate(-200%);
    }
}
@keyframes slide3 {
    0%{
        transform: translate(-200%);
    }
    100%{
        transform: translate(-300%);
    }
}
@keyframes slide4 {
    0%{
        transform: translate(-300%);
    }
    100%{
        transform: translate(0%);
    }
}

Note- 我没有发布标题部分的CSS代码,所以你可以忽略它。

我尝试过通过 JS 这样做,但它对我不起作用。 提前致谢 :)


您可以使用具有多个步骤的单个动画,而不是多个动画。不只是0% and 100%。这也使得能够使用infinite步数

.slider{
    display: flex;
    width: 100%;
    overflow: hidden;
}
.slider img{
    min-width: 100%;
    min-height: 100%;
    animation: slide 8s forwards infinite;
    transform: translate(0%);
}
@keyframes slide {
    0% {
      transform: translate(0%);
    }
    10% { /* wait 10% for delay */
      transform: translate(0%);
    }
    
    25% {
      transform: translate(-100%);
    }
    35% { /* wait 10% for delay */
      transform: translate(-100%);
    }
    
    50% {
      transform: translate(-200%);
    }
    60% { /* wait 10% for delay */
      transform: translate(-200%);
    }
    
    75% {
      transform: translate(-300%);
    }
    85% { /* wait 10% for delay */
      transform: translate(-300%);
    }
    
    100% {
      transform: translate(0%);
    }
}
<main>
    <div class="slider" id="slide">
        <img src="//picsum.photos/500/250?c=1" width="500" height="250">
        <img src="//picsum.photos/500/250?c=2" width="500" height="250">
        <img src="//picsum.photos/500/250?c=3" width="500" height="250">
        <img src="//picsum.photos/500/250?c=4" width="500" height="250">
    </div>
</main>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何自动重新启动 CSS 动画 的相关文章

随机推荐

  • 可以解析 HTML 文档并构建 DOM 树(java)

    是否可能以及可以使用哪些工具将 html 文档解析为字符串或文件 然后构建 DOM 树 以便开发人员可以通过某些 API 遍历该树 例如 DomRoot parse myhtml html for tags DomRoot 注意 这是一个
  • 为什么MIPS不能在寻址模式下使用两个寄存器?

    我很好奇为什么我们不允许在 MIPS 中使用寄存器作为偏移量 我知道你can t使用寄存器作为偏移量 如下所示 lw t3 t1 t4 我只是好奇why情况就是如此 是硬件限制吗 或者只是 ISA 的一部分 PS 如果您正在寻找替代方法 请
  • 根据 2 个以上组的百分比随机分配对照组与治疗组

    小猪放弃了我之前的问题python pandas 根据 随机分配对照组与治疗组 感谢 maxU 我知道如何将随机对照组 治疗组分配为 2 个组 但如果我有 3 个或更多组怎么办 例如 df head customer id Group ma
  • 如何用python3生成unicode字符串

    我用过这个 u unicode text utf 8 但是使用 Python 3 时出现错误 或者 也许我只是忘记包含一些内容 NameError global name unicode is not defined 谢谢 Python3
  • 从字符串中提取可变长度的数量

    我想从字符串中提取多个可变长度 该字符串如下所示 used memory 1775220696 我想要1775220696变量中的一部分 对此有很多疑问 但我找不到适合我需要的解决方案 您可以使用cut my val echo used m
  • 从 Java 应用程序启动 OpenVPN [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 是否可以通过 Java 应用程序启动 OpenVPN 如果可能的话 最好的方法是什么 这样它是跨平台的 并且可以在所有安装了 OpenVPN 的平台上运行 你可以像这样用 Jav
  • 在构造函数或类中的粗箭头中绑定

    所以我想知道这之间是否有区别 import React Component PropTypes from react class Example extends Component constructor props super props
  • 仅将函数应用于一个 div 类,而不是全部

    我目前正在网站上的位置页面上工作 并且在显示 隐藏 jquery 效果时遇到问题 下面的 jQuery 激活点击并应用切换 div 的类以显示 隐藏它 非常简单 但是 当我添加更多具有相同类的 div 并单击激活器链接时 它会在所有 div
  • 在某些行/列值处提取子矩阵

    我需要根据行 列索引和切片距离来切片 2D 输入数组 在下面的示例中 我可以从输入矩阵中提取 3x3 子矩阵 但我无法调整此代码以适应我想要的任何搜索距离 而无需手动写下索引 Example import numpy as np creat
  • 寻找具有分段完成/树模型的 QCompleter 示例

    PySide 文档包含此部分具有树模型的 QCompleter PySide QtGui QCompleter 可以在树模型中查找补全 假设任何项目 或子项目或子子项目 都可以通过指定项目的路径明确表示为字符串 然后一次完成一层 让我们以用
  • 为什么有时在 Windows 控制台程序中按 Ctrl+Z 时才会终止输入? [复制]

    这个问题在这里已经有答案了 我知道使用 ctrl z 来表示 EOF 或 EOT 通常已经过时且不推荐 但我只是好奇幕后发生了什么 假设我在 C 中有这样的东西 include
  • Angular 通用参考错误 - KeyboardEvent 未定义

    我在其中添加了 多米诺骨牌 服务器 ts甚至还更新了webpack server config js as module rules test ts js loader regexp replace loader options match
  • 是否可以使用 Streams.intRange 函数?

    我想使用 Streams intRange int start int end int step 来实现反向排序流 然而 似乎 java util Streams 类不再可用 但它仍然在标准库的 rt jar 中 该方法是否在其他类中或被其
  • 修改ggplot中的viridis调色板

    我试图通过一个主要是数字的因素来为 ggplot 着色 如下所示 iris gt ggplot aes Sepal Length Sepal Width color cut Petal Length 0 7 geom point scale
  • Angular 2 共享服务将数据传递到组件

    我正在尝试传递字符串值this title从我的登陆页面 组件到我的结果页面 组件 我检索到list show值 并将其发送到我的TitleService就像我的 登陆页面 component html ol li list show li
  • 正则表达式仅匹配整个单词中的数字

    我想使用 NET 匹配字符串内的正数和负数 无小数或千位分隔符 但我只想匹配整个单词 所以如果一个字符串看起来像 redeem 1234 paid 234432 那么我想匹配 1234 和 234432 但如果文本是 LS022 1234
  • VB.NET 中的 HTTP GET

    在 VB net 中发出 http get 的最佳方法是什么 我想得到像这样的请求的结果http api hostip info ip 68 180 206 184 在 VB NET 中 Dim webClient As New Syste
  • 使用 youtube API v3 时订单不起作用

    我正在尝试获取某个频道的最后 10 个视频 当我运行以下代码时 from apiclient discovery import build API SERVICE NAME youtube API VERSION v3 def youtub
  • “警告:在参数列表中声明了‘结构矩阵’[默认启用]”和错误:‘scanToken’的类型冲突

    我一直在研究这个问题 试图找出导致这些错误的原因 但到目前为止我一无所获 我有这个功能 struct token scanToken struct matrix refTable struct token send int counter
  • 如何自动重新启动 CSS 动画

    我是网页设计新手 在 CSS 方面面临一些问题 其实我是在克隆amazon com并创建一个带有滑动动画的滑块 但动画只运行一次 我想让它无限运行 这是我的代码 HTML index html