首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无限水平滚动在div末尾有空白

无限水平滚动在div末尾有空白
EN

Stack Overflow用户
提问于 2021-04-02 22:32:52
回答 1查看 61关注 0票数 2

我正在尝试创建一个动画,其中包含所有卡片的div从右向左滑动,我已经实现了这一点。

问题是在div的末尾有一个巨大的白色间隙,当它重置时,我设法修复了这个问题,方法是指定在100%中div应该已经翻译了-1110px,但这会导致轮播重置时出现卡顿。

有没有什么办法可以让动画重置为0%而不会造成卡顿效果?代码如下

代码语言:javascript
复制
<div className="scroll-container" id="reset">
  <div className="scroll">
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
  </div>
  <div className="scroll">
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
    <Card industry="Industry" description="Description" />
  </div>
</div>
代码语言:javascript
复制
.container {
  position: relative;
}
.scroll-container {
  position: relative;
  animation: scroll 5s linear infinite;
}
.scroll {
  display: flex;
  overflow: hidden;
  white-space: nowrap;
  margin: 0.5rem 0;
  transform: translateX(82px);
}
@keyframes scroll {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-1110px);
  }
}

EN

回答 1

Stack Overflow用户

发布于 2021-04-02 22:42:17

在动画中添加50%,如下所示:

代码语言:javascript
复制
    @keyframes scroll {
      0% {
        transform: translateX(0%);
      }
      50% {
        transform: translateX(-1110px);
      }
      100% {
        transform: translateX(0%);
      }
    }

并将动画持续时间从5s更改为10s,这样它将与之前的延迟相同。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66920876

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档