CSS3雷达扫描效果

CSS3雷达扫描效果https://www.bootstrapmb.com/item/14840

要创建一个CSS3的雷达扫描效果,我们可以使用CSS的动画(@keyframes)和transform属性。以下是一个简单的示例,展示了如何创建一个类似雷达扫描的动画效果:

HTML:

复制代码
复制代码
html`<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>雷达扫描效果</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<div class="radar">
<div class="beam"></div>
</div>
</body>
</html>`

CSS (styles.css):

复制代码
复制代码
css`body {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
background-color: #000;
overflow: hidden;
}

.radar {
position: relative;
width: 200px;
height: 200px;
border-radius: 50%;
background-color: #333;
overflow: hidden;
}

.beam {
position: absolute;
top: 50%;
left: 50%;
width: 2px;
height: 100%;
background-color: #fff;
transform-origin: top center;
animation: radar-scan 2s linear infinite;
}

@keyframes radar-scan {
0% {
transform: rotate(0deg) translateY(-50%);
}
100% {
transform: rotate(360deg) translateY(-50%);
}
}`

在上面的代码中,我们定义了一个名为.radar的圆形div作为雷达的主体,并在其中放置了一个名为.beam的垂直线,这条线将作为雷达的扫描线。.beam元素使用CSS动画radar-scan进行旋转,模拟雷达扫描的效果。

动画radar-scan通过@keyframes规则定义,使.beam元素在2秒内从0度旋转到360度,从而实现连续的扫描效果。transform-origin属性设置为top center,确保旋转的起点在元素的顶部中心。

注意,translateY(-50%)用于将扫描线垂直居中在雷达圆内。由于.beamtop属性设置为50%,这会将扫描线的顶部置于雷达圆的中心,而translateY(-50%)则会将其向上移动自身高度的一半,从而实现垂直居中。

这个示例创建了一个非常基础的雷达扫描效果。您可以根据需要调整颜色、大小、旋转速度等属性,以及添加更多的细节和效果。

相关推荐
依辰2 分钟前
小程序自动化构建与版本管理方案优化
前端·javascript·微信小程序
Geoffwo2 分钟前
取消echarts地图悬浮时默认黄色高亮
前端·javascript·echarts
我是谁谁3 分钟前
Canvas 高级应用与实战项目<3>
javascript·css·canvas
前端大卫10 分钟前
🔥 如何“为所欲为”地渲染页面:优雅拦截 Fetch 和 XMLHttpRequest!
前端·javascript
苏州第一深情11 分钟前
【vue+leaflet】自定义控件(五)
前端·javascript·vue.js
逾明11 分钟前
在项目中使用Volta控制node版本
前端·node.js
日升13 分钟前
Electron 开发:获取当前客户端真实 IP
前端·javascript·electron
你不会困14 分钟前
用纯JS监控本地文件,让网页拥有千里眼!
前端
枫无痕15 分钟前
promise源码解析
前端·vue.js
曙光就在眼前15 分钟前
奋发图强学 React 系列 (二):React 高阶组件(HOC)
前端·react.js