CSS雷达光波效果(前端雷达光波效果)

前言

CSS雷达光波效果是一种视觉动画效果,常用于模仿雷达扫描或检测的视觉反馈。这种效果通常涉及到动态的圆形或弧形图案,它们从一个中心点向外扩散,类似于水面上的涟漪或雷达扫描线。以下是创建CSS雷达光波效果的一些关键技术和步骤,这里提供两种效果 ,简单记录一下


一. First

1. HTML 结构

html 复制代码
<div class="radar_container">
      <div class="radar_wave"></div>
      <div class="radar_wave"></div>
      <div class="radar_wave"></div>
</div>

2. CSS 内容

css 复制代码
  .radar_container {
    margin: auto;
    position: relative;
    width: 200px;
    height: 200px;
    // background-color: #000;
    border-radius: 50%;
    overflow: hidden;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .radar_wave {
    position: absolute;
    width: 20px;
    height: 20px;
    border: 1px solid #00ff00;
    border-radius: 50%;
    transform: scale(0); // 初始状态改为从中间开始
    box-shadow: inset 0 0 5px 1px #00ff00; // 添加阴影
    animation: radar_wave-animation 3s infinite;
  }

  .radar_wave:nth-child(1) {
    animation-delay: 0s;
  }
  .radar_wave:nth-child(2) {
    animation-delay: 1s;
  }
  .radar_wave:nth-child(3) {
    animation-delay: 2s;
  }

  @keyframes radar_wave-animation {
    0% {
      transform: scale(0); // 从中间开始
      opacity: 1;
    }
    100% {
      transform: scale(10); // 扩散到原来的10倍大小
      opacity: 0;
    }
  }

二. Second

1. HTML 结构同上,CSS 内容请看以下

css 复制代码
  .radar_container {
    margin: auto;
    position: relative;
    width: 200px;
    height: 200px;
    // background-color: #000;
    border-radius: 50%;
    overflow: hidden;
    cursor: pointer;
  }
  .radar_wave {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    background-color: #8080ff;
    border-radius: 50%;
    transform: translate(-50%, -50%) scale(1);
    animation: radar_wave-animation 3s infinite;
  }

  .radar_wave:nth-child(1) {
    animation-delay: 0s;
  }

  .radar_wave:nth-child(2) {
    animation-delay: 1s;
  }

  .radar_wave:nth-child(3) {
    animation-delay: 2s;
  }

  @keyframes radar_wave-animation {
    0% {
      transform: scale(0); // 从中间开始
      opacity: 1;
    }
    100% {
      transform: scale(10); // 扩散到原来的10倍大小
      opacity: 0;
    }
  }

感觉有用,就一键三连,感谢(●'◡'●)

相关推荐
堕落年代10 分钟前
Vue主流的状态保存框架对比
前端·javascript·vue.js
OpenTiny社区21 分钟前
TinyVue的DatePicker 组件支持日期面板单独使用啦!
前端·vue.js
冴羽22 分钟前
Svelte 最新中文文档教程(22)—— Svelte 5 迁移指南
前端·javascript·svelte
树上有只程序猿26 分钟前
Vue3组件通信:多个实战场景,轻松玩转复杂数据流!
前端·vue.js
剪刀石头布啊33 分钟前
css属性值计算过程
前端·css
bin915338 分钟前
DeepSeek 助力 Vue3 开发:打造丝滑的表格(Table)之添加列宽调整功能,示例Table14基础固定表头示例
前端·javascript·vue.js·ecmascript·deepseek
小华同学ai40 分钟前
吊打中文合成!这款开源语音神器效果炸裂,逼真到离谱!
前端·后端·github
颜酱1 小时前
后台系统从零搭建(三)—— 具体页面之部门管理(抽离通用的增删改查逻辑)
前端·javascript·react.js
qq_332539451 小时前
JavaScript性能优化实战指南
前端·javascript·性能优化
wkj0011 小时前
Vue 项目中,.env文件怎么用?
前端·javascript·vue.js