CSS3动画:@keyframes animation 案例——制作滚动公告

CSS3动画:@keyframes animation 案例——制作滚动公告

滚动公告的制作请参阅:Marquee标签实现跑马灯、滚动公告、通知效果

今天我们使用CSS3的@keyframes和animation 制作滚动文字公告。

@keyframes规则

@keyframes 规则用于创建动画。在@keyframes 中规定某项 CSS 样式,就能创建由当前样式逐渐改为新样式的动画效果。

注释:当动画完成后,动画的状态会回到初始状态。

要改变这一点,可以设置 animation-fill-mode: forwards; 使动画完成后停留在最后一帧。

CSS3动画实例

@keyframes myfirst
{
from {background: red;}
to {background: yellow;}
}

@-moz-keyframes myfirst /* Firefox */
{
from {background: red;}
to {background: yellow;}
}

@-webkit-keyframes myfirst /* Safari 和 Chrome */
{
from {background: red;}
to {background: yellow;}
}
/*注:下面的写法将不再写 -webkit- 和 -moz- */

或者用%表示时间段

@keyframes myfirst
{
0%   {background: red;}
25%  {background: yellow;}
50%  {background: blue;}
100% {background: green;}
}

当在 @keyframes 中创建动画时,请把它捆绑到某个选择器,否则不会产生动画效果。

通过规定至少以下两项 CSS3 动画属性,即可将动画绑定到选择器:

  • 规定动画的名称
  • 规定动画的时长

把 “myfirst” 动画捆绑到 div 元素,时长:3 秒:

div{
animation: myfirst 3s;
}

其中animation有6个属性

  • animation-name  规定 @keyframes 动画的名称
  • animation-duration  规定动画完成一个周期所花费的秒或毫秒。默认是 0
  • animation-timing-function  规定动画的速度曲线。默认是 “ease” 。  4个属性:ease、ease-in、ease-out、ease-in-out
  • animation-delay  规定动画何时开始。默认是 0
  • animation-iteration-count  规定动画被播放的次数。默认是 1。   2个属性:n(次数,不填写即为1)和infinite(无限次)
  • animation-direction  规定动画是否在下一周期逆向地播放。默认是 “normal”。   2个属性:normal(正常循环播放,可不填)和alternate(结束后轮流反向播放)

所有属性可以合起来写

div {
animation: myfirst 5s linear 1s infinite alternate;
/*动画名称、动画时间5s、动画速度:匀速、延迟开始时间:1s、动画播放次数:无限次、动画完成后下一周期:轮流反向播放。*/
}

使用CSS3的@keyframes和animation 制作滚动文字公告

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSS3动画——@keyframes animation|www.125jz.com</title>
    <style>
      .wrap{
        width: 300px;
        border: 1px solid  #999;
  margin: 200px auto;
        background-color: #CCC;
        overflow: hidden;
    }
    .wrapFont{
       
        transform: translateX(0%);
        animation: scrols 10s infinite linear;
    }
    @keyframes scrols{
        from{
            transform: translateX(100%);
        }
        to{
            transform: translateX(-100%);
        }
    }


    </style>
</head>
<body>
<div class="wrap">
        <div class="wrapFont">CSS动画——@keyframes animation</div>
</div>
</html>

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/3312.html

(1)
江山如画的头像江山如画管理团队
上一篇 2019年2月26日 上午10:14
下一篇 2019年2月28日 上午8:57

99%的人还看了以下文章

  • vue学习-我的第一个vue代码

    创建一个 .html 文件,然后通过如下方式引入 Vue: <!– 开发环境版本,包含了有帮助的命令行警告 –> <script src=”https://cdn.jsdelivr.net/npm/vue/dist/vue.js”></script> 或者: <!– 生产环境版本,优化了尺寸和速度 –>…

    2020年6月14日
    3.7K0
  • CSS实现段落首字下沉效果的2种方法

    CSS实现段落首字下沉效果方法一 在CSS布局中,通过设置首字的大小并向左浮动,从而使得首字与其他字符区别;通过右边距控制首字与其他字符的距离。 #first{font-size:3em; font-weight:bold; float:left; margin-right:20px; } <p><span id=”first”>云&…

    2019年4月2日
    11.6K0
  • 第14课:元素的定位

    CSS定位令你可以将一个元素精确地放在页面上你所指定的地方。联合使用定位与浮动(参见第13课),你将能够创建多种高级而精确的布局。本课我们将讨论以下内容: CSS定位的原理 绝对定位 相对定位 CSS定位的原理 把浏览器窗口想象成一个坐标系统: CSS定位的原理是:你可以将任何盒子(box)放置在坐标系统的任何位置上。 假设我们要放置一个标题。通过使用盒状模…

    2020年2月25日
    2.3K0
  • 一句代码给图片加倒影-CSS3

    本文使用纯CSS代码给图片加倒影,CSS代码 : img { -webkit-box-reflect: below 0px -webkit-gradient(linear, left top, left bottom, from(transparent), to(rgba(250, 250, 250, 0.1))); } 效果如下图所示: 完整代码: 一句代…

    2019年8月18日
    2.3K0
  • Marquee标签实现跑马灯、滚动公告、通知效果

    1.Marquee基本语法 <marquee> … </marquee> 实例演示:会移动的文字(Marquee) <marquee>啦啦啦,我会移动耶!</marquee> 2.文字移动属性 (1)方向 :direction=# #=left, right,up,down 例: <marqu…

    2019年2月26日
    8.1K0
  • 第15课:最后提示

    祝贺!你已经进入最后一课了! 我已经学到全部知识了? 如果你已经学完以上教程,恭喜你,你已经学到了很多关于HTML的知识,并且完全有能力创建自己的网站!不过,你所学到的只是基础知识,还有许多内容需要掌握。但是你已经为进一步学习打下了坚实的基础。 在最后这一课中,我们将给予一些最后提示: 首先,在HTML文档中,应保持正确的顺序与结构。令你的HTML文档具有良…

    2018年1月18日
    2.3K0

发表回复

登录后才能评论