当前位置:首页 > 科技  > 软件

纯CSS实现跑马灯效果,CSS动画知识是该补一补了~

来源: 责编: 时间:2023-11-01 09:18:30 175观看
导读前言大家好,我是林三心,用最通俗易懂的话讲最难的知识点是我的座右铭,基础是进阶的前提是我的初心~最近看一个网站的时候,发现一个效果类似于广告灯的感觉,挺不错的,于是就想用纯CSS来实现这个效果,顺便提升一下自己的CSS动

前言

大家好,我是林三心,用最通俗易懂的话讲最难的知识点是我的座右铭,基础是进阶的前提是我的初心~5Dd28资讯网——每日最新资讯28at.com

最近看一个网站的时候,发现一个效果类似于广告灯的感觉,挺不错的,于是就想用纯CSS来实现这个效果,顺便提升一下自己的CSS动画技能5Dd28资讯网——每日最新资讯28at.com

图片图片5Dd28资讯网——每日最新资讯28at.com

分析

我们先分析怎么做的,这个效果分成两个部分5Dd28资讯网——每日最新资讯28at.com

  • 上层:真正动画的层级
  • 下层:充当一个底色

然后他们通过绝对定位叠在一起5Dd28资讯网——每日最新资讯28at.com

图片图片5Dd28资讯网——每日最新资讯28at.com

可以看到,动画没开始前,页面是这样的,可以理解这是一个底色下层,铺在下面,让每一个圆都有一个轮廓5Dd28资讯网——每日最新资讯28at.com

图片图片5Dd28资讯网——每日最新资讯28at.com

动画上层开始的时候,下层是不变的,一直保持底色5Dd28资讯网——每日最新资讯28at.com

图片图片5Dd28资讯网——每日最新资讯28at.com

开始写页面

页面

<!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8">  <meta name="viewport" content="width=device-width, initial-scale=1.0">  <title>Document</title>  <style>    body {      background-color: #232b36;    }    .container {      position: relative;    }    .grid {      display: flex;      flex-wrap: wrap;      width: 240px;    }    .high {      position: absolute;      z-index: -1;      top: 0;      left: 0;    }    .low {      opacity: .1;      position: absolute;      z-index: 0;      top: 0;      left: 0;    }    span {      width: 4px;      height: 4px;      margin: 10px;      border-radius: 50%;      background-color: #fff;      opacity: .6;      display: block;    }  </style></head><body>  <div class="container">    <div class="grid high">       30个span。。    </div>    <div class="grid low">       30个span。。    </div>  </div></body></html>

现在能看到已经把两层叠在了一起5Dd28资讯网——每日最新资讯28at.com

图片图片5Dd28资讯网——每日最新资讯28at.com

动画

接下来让 high 这一层开始动画5Dd28资讯网——每日最新资讯28at.com

.high span {      /* 动画名 */      animation-name: myAnimation;      /* 动画时长 */      animation-duration: 1s;      /* 无限循环 */      animation-iteration-count: infinite;      background-color: #AEF731;    }    @keyframes myAnimation {      0% {        transform: scale(0);        opacity: 0;      }      100% {        transform: scale(1);        opacity: 1;      }    }

现在就有动画效果了5Dd28资讯网——每日最新资讯28at.com

图片图片5Dd28资讯网——每日最新资讯28at.com

但是我们可以看到刚刚我们想要的效果,他是中间先变,四周再变的5Dd28资讯网——每日最新资讯28at.com

图片图片5Dd28资讯网——每日最新资讯28at.com

所以我们需要使用到动画延迟,也就是5Dd28资讯网——每日最新资讯28at.com

animation-delay这个样式属性5Dd28资讯网——每日最新资讯28at.com

.delay-1 {      animation-delay: 0.1s;    }    .delay-2 {      animation-delay: 0.2s;    }    .delay-3 {      animation-delay: 0.3s;    }    .delay-4 {      animation-delay: 0.4s;    }
<div class="grid high">      <span class="delay-4"></span>      <span class="delay-3"></span>      <span class="delay-2"></span>      <span class="delay-1"></span>      <span></span>      <span></span>      <span class="delay-1"></span>      <span class="delay-2"></span>      <span class="delay-3"></span>      <span class="delay-4"></span>      <span class="delay-4"></span>      <span class="delay-3"></span>      <span class="delay-2"></span>      <span class="delay-1"></span>      <span></span>      <span></span>      <span class="delay-1"></span>      <span class="delay-2"></span>      <span class="delay-3"></span>      <span class="delay-4"></span>      <span class="delay-4"></span>      <span class="delay-2"></span>      <span class="delay-2"></span>      <span class="delay-1"></span>      <span></span>      <span></span>      <span class="delay-1"></span>      <span class="delay-2"></span>      <span class="delay-3"></span>      <span class="delay-4"></span>    </div>

这就达到了我们想要的效果啦~~~5Dd28资讯网——每日最新资讯28at.com

图片图片5Dd28资讯网——每日最新资讯28at.com

代码总览

图片 图片 5Dd28资讯网——每日最新资讯28at.com

本文链接://www.dmpip.com//www.dmpip.com/showinfo-26-16275-0.html纯CSS实现跑马灯效果,CSS动画知识是该补一补了~

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 不懂函数,就别说你懂Python!从零开始,轻松入门Python函数

下一篇: Spring Boot应用中的配置文件选择:YAML vs. Properties

标签:
  • 热门焦点
Top
Baidu
map