向CSS动画添加另一步

帕特里克·绍姆堡

我有以下内容,效果很好,但这是我第一次尝试CSS动画。如何在动画中添加另一个步骤?我想做的是让一条消息淡出或消失,然后弹出两条消息然后滚动出去,以便形成一个不错的循环。

<style style="text/css">

    .scroll-left {
         height: 50px;  
         overflow: hidden;
         position: relative;
         background:black;
         color: white;
         border: 1px solid white;
         font-size: 32px;
         font-style: italic; 
    }

    .scroll-left p 

     {
         position: absolute;
         width: 100%;
         height: 100%;
         margin: 0;
         line-height: 50px;
         text-align: center;

         /* Starting position */
         transform:translateX(100%);

         /* Apply animation to this element */  
         animation: scroll-left 8s linear infinite;
    }

    @keyframes scroll-left {
        0%   
        { 
             -moz-transform: translateX(100%); /* Browser bug fix */
             -webkit-transform: translateX(100%); /* Browser bug fix */
             transform: translateX(100%);       
         }

         100% 
        { 
         -moz-transform: translateX(2%); /* Browser bug fix */
         -webkit-transform: translateX(2%); /* Browser bug fix */
         transform: translateX(2%); 
        }
    }
</style>

<div class="scroll-left">
    <p>
        <span style="color:#841214">Message One</span>  
        <!-- Message Two -->
    </p>
</div>

我意识到我需要在不同的关键帧%s上使用不同的步骤,但是我不确定当要在同一区域中为多个项目设置动画时它如何工作。

我试图这样做,以使第一条消息消失:

@keyframes scroll-left 
    {
        /* Move it left */
        0%   
        { 
             transform: translateX(100%);       
         }

        /* Stop It */
        25% 
        { 
            transform: translateX(0%); 
             opacity:100;
        }

        /* fade out */
        40% 
        { 
             visibility: hidden;
             opacity:0;
             transition: visibility 0s 2s, opacity 2s linear;
             transform: translateX(0%); 
        }

        100%
        {
            visibility: hidden;
            opacity:0;
            transition: visibility 0s 2s, opacity 2s linear;
            transform: translateX(0%); 
        }
    }

但是它只是消失而不会消失。

塞尔格·切尔纳塔(Serg Chernata)

您只需要为要设置动画的任何属性指定起始值和结束值即可。在这种情况下,opacity应满足您的所有需求。

.scroll-left {
  height: 50px;
  overflow: hidden;
  position: relative;
  background: black;
  color: white;
  border: 1px solid white;
  font-size: 32px;
  font-style: italic;
}

.scroll-left p {
  position: absolute;
  width: 100%;
  height: 100%;
  margin: 0;
  line-height: 50px;
  text-align: center;
  /* Starting position */
  -moz-transform: translateX(100%);
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  /* Apply animation to this element */
  -moz-animation: scroll-left 5s linear infinite;
  -webkit-animation: scroll-left 5s linear infinite;
  animation: scroll-left 5s linear infinite;
}

@keyframes scroll-left {
  /* Move it left */
  0% {
    transform: translateX(100%);
  }
  /* Stop It */
  25% {
    transform: translateX(0%);
  }
  /* fade out */
  40% {
    opacity: 1;
    transform: translateX(0%);
  }
  100% {
    opacity: 0;
    transform: translateX(0%);
  }
}
<div class="scroll-left">
  <p>
    <span style="color:#841214">Message One</span>
    <!-- Message Two -->
  </p>
</div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Matplotlib动画的一步

来自分类Dev

下一步按钮触发CSS动画的

来自分类Dev

当用户在我的表单上单击下一步时添加加载动画

来自分类Dev

Angular Crossfade动画跳到最后一步

来自分类Dev

Dijkstra 一步一步

来自分类Dev

如何一步一步将前缀复制并添加到文件名?

来自分类Dev

一步登录

来自分类Dev

需要注意的另一步验证码

来自分类Dev

一步将元素迭代添加到列表

来自分类Dev

添加Browserify作为gulp任务转换的最后一步

来自分类Dev

进一步缩放CSS背景封面属性

来自分类Dev

一步一步如何将 PowerBI-JavaScript API 嵌入到项目 HTML CSS JS 中

来自分类Dev

一步一步向前声明和使用

来自分类Dev

一步一步汇总和计算

来自分类Dev

使用Quanteda一步一步创建DFM

来自分类Dev

如何一步一步登录到ftp?

来自分类Dev

Python Code 一步一步理解代码

来自分类Dev

一步一步加载div(淡入)

来自分类Dev

循环范围,一步一步?

来自分类Dev

一步一步构建 url - Angular

来自分类Dev

一步锁定文件

来自分类Dev

一步预测预报

来自分类Dev

一步锁定文件

来自分类Dev

向 css 添加新的 @keyframes 动画

来自分类Dev

在mIRC中进一步执行之前添加一个暂停

来自分类Dev

toggleClass 不会第一次添加类并进一步工作

来自分类Dev

在JavaScript代码中添加5秒的延迟,因为单击“下一步”按钮

来自分类Dev

在iOS的NumberPad上添加“下一步” /“完成”按钮?

来自分类Dev

在FlexSlider2中添加“下一步”按钮