文本自动输入/删除的加载动画效果

效果展示


CSS 知识点

  • 绕矩形四周跑的光柱动画实现
  • animation 属性的 steps 属性值运用

页面基础结构实现

html 复制代码
<div class="loader">
  <!-- span 标签是围绕矩形四周的光柱 -->
  <span></span>
  <span></span>
  <span></span>
  <span></span>
  <h3>Loading...</h3>
</div>

实现矩形基础样式

css 复制代码
.loader {
  position: relative;
  width: 200px;
  height: 200px;
  background-color: #1a1a1f;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.5s;
  color: #fff;
  /* overfolow 属性只要是隐藏光柱,因为光柱的动画是绝对定位属性来实现的 */
  overflow: hidden;
  -webkit-box-reflect: below 1px linear-gradient(transparent, #0004);
}

.loader:hover {
  background: #03e9f4;
  color: #050801;
  box-shadow: 0 0 5px #03e9f4, 0 0 25px #03e9f4, 0 0 50px #03e9f4, 0 0 200px
      #03e9f4;
}

实现矩形四周光柱基础布局

要实现光柱绕着矩形跑的效果,我们可以让四个光柱这样布局,然后使用动画和动画延迟属性来让光柱进行动画执行。

css 复制代码
/* 剩余的几个光柱只要修改绝对定位的数值就可以 */
.loader span:nth-child(1) {
  top: 0;
  left: -100%;
  width: 100%;
  height: 5px;
  background: linear-gradient(90deg, transparent, #03e9f4);
}

实现四周光柱绕着矩形进行动画

css 复制代码
/* 剩余的几个光柱主要修改动画延迟时间就可以,动画延迟间隔可以定位0.5秒 */
.loader span:nth-child(1) {
  animation: animate1 2s linear infinite;
  animation-delay: 0s;
}

/* 剩余的几个光柱动画,我们只要修改对应的绝对定位值就可以,这里的动画进行可以自行修改 */
@keyframes animate1 {
  0% {
    left: -100%;
  }
  50%,
  100% {
    left: 100%;
  }
}

实现文本自动输入和删除动画

css 复制代码
.loader h3 {
  font-family: consolas;
  color: #03e9f4;
  overflow: hidden;
  letter-spacing: 2px;
  transition: 0.5s;
  border-right: 1px solid #03e9f4;
  /* steps 设置动画的间隔 */
  animation: typing 5s steps(10) infinite;
}

.loader:hover h3 {
  color: #111;
  border-right: 1px solid #111;
}

@keyframes typing {
  /* 影响文字输入的动画速度 */
  0%,
  90%,
  100% {
    width: 0px;
  }
  /* 影响文字删除的动画速度 */
  30%,
  60% {
    width: 123.88px;
  }
}

完整代码下载

完整代码下载

相关推荐
Hilaku14 分钟前
JavaScript 里的 !0、!1 到底是啥?聊聊那些压缩器最爱的“极简写法”
前端·javascript
全栈陈序员23 分钟前
前端文件下载常用方式详解
前端·javascript·chrome·ajax·css3·html5·safari
二十一_32 分钟前
🤖✨ ChatGPT API深度体验:让AI看懂图片、听懂语音、调用你的代码
前端·chatgpt·openai
Developer_Niuge38 分钟前
前端批量请求失败重复弹窗的正确解决方案
前端
前端小饭桌39 分钟前
告别嵌套地狱:用数据结构优化解决 JS 多层循环的混乱与静默错误
前端·javascript
爱摸鱼的格子40 分钟前
🚀 你真的会用 Promise.all 吗?10 个实用技巧助你成为异步处理大师!
前端
JacksonGao41 分钟前
React Fiber的调度算法你了解多少呢?
前端·react.js
这可不简单43 分钟前
方便易懂的自适应方案---echarts和dom样式大小自适应
前端·vue.js·echarts
玲小珑1 小时前
Auto.js 入门指南(七)定时任务调度
android·前端
橘黄的猫1 小时前
深入解析 import.meta.url:与 new URL() 的关系及 Vite 中的 base 路径影响
前端·vite