javascript - 制作一个动画遍历页面CSS

标签 javascript css gsap

是否可以使从页面右上角开始的动画水平移动到页面左上方,然后从右上角再次开始,而不使动画元素在两端消失。

像这样:

左| em ipsum dolor sat amet consectetuer adipiscing elit lor |右

在上面的示例中,文本在页面上绕了一圈并重新开始

我已经尝试使用 2 个具有相同内容的 div,如下所示:

 <footer class="footer ">
     <div class="footer__1 ">
         lorem ipsum dolor sit amet consectetuer adipiscing elit
     </div>
     <div class="footer__2 ">
         lorem ipsum dolor sit amet consectetuer adipiscing elit
     </div>
 </footer>

.footer {
height: 6vh;
position: fixed;
bottom: 0;
right: 0;
left: 0;
background: white;
overflow: hidden;
transform: translate3d(0, 0, 0);
.arrow {
    margin-left: 10px;
    margin-right: 10px;
}
&>div {
    position: absolute;
    top: 0;
    display: flex;
    height: 100%;
    align-items: center;
    text-align: center;
}
&__1 {
    transform: translate3d(0, 0, 0) translateX(10%);
    animation: infiniteText1 20s linear infinite;
}
&__2 {
    transform: translate3d(0, 0, 0) translateX(120%);
    animation: infiniteText2 20s linear infinite;
   }
}

@keyframes infiniteText1 {
    100% {
        transform: translateX(-100%);
    }
}

@keyframes infiniteText2 {
    100% {
        transform: translateX(20%);
    }
}

提前致谢!

最佳答案

一个元素不可能同时处于两个位置。但是您可以通过复制内容(或通过使用一堆不同的内容并包装每个部分)来创建此效果。

对于如何使用文本执行此操作,我建议 this thread on GreenSock's forums .

如何使用一堆不同的内容来做到这一点 this post has you covered .

关于javascript - 制作一个动画遍历页面CSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60621586/

相关文章:

javascript - AngularJS 投票系统 - 防止多票

javascript - 使用 JavaScript 打开和关闭 CSS 转换

javascript - 更改效果的 TweenMax 速度

javascript - safari 中的 reduxForm 输入文件返回未定义

javascript - 使用 CSS 进行页面转换

javascript - 如何在第 n 个空格处将一个长字符串一分为二?

javascript - 如何正确链接调用 $.show() 和 $.toggleClass() 来触发 CSS3 动画

html - IE9 中的可选右栏

javascript - append 一个新对象然后设置动画

javascript - 在 GSAP 中使用循环来获取多个对象