当前位置: 首页 > news >正文

HTMLCSS模板实现水滴动画效果

  1. .container 类:定义了页面的容器样式。
    • display: flex:使容器成为弹性容器,方便对其子元素进行布局。
    • justify-content: center 和 align-items: center:分别使子元素在水平和垂直方向上居中对齐。
    • min-height: 100vh:设置容器的最小高度为视口高度的 100%,确保页面内容能覆盖整个视口。
    • background-color: #000:设置容器的背景颜色为黑色。
    • flex-direction: column:使子元素在容器中以垂直方向排列。
    • filter: contrast(30):增加元素的对比度,这里将对比度设置为 30。
  2. .drop 类:定义了页面中类似水滴的元素样式。
    • width: 100px 和 height: 100px:设置元素的宽度和高度均为 100 像素。
    • border-radius: 50%:将元素的边框设置为圆形,使其看起来像水滴。
    • position: absolute:将元素设置为绝对定位,方便在页面中精确控制其位置。
    • filter: blur(20px):对元素应用模糊效果,使其边缘看起来更柔和。
    • background-color: #fff:设置元素的背景颜色为白色。
    • opacity: 0:初始时元素的透明度为 0,即不可见。
    • animation: 2.5s drop linear infinite:应用名为 drop 的动画,动画持续时间为 2.5 秒,线性播放,无限循环。
  3. .drop 类的子元素选择器:通过 :nth-child 选择器分别对不同的 .drop 元素设置了不同的位置偏移和动画延迟,使它们的动画效果略有不同,增加了视觉层次感。
  4. .collection 类:定义了另一个圆形元素的样式。
    • 基本样式与 .drop 类似,也设置了宽度、高度、圆角、模糊效果和背景颜色。
    • animation: 3s collection linear infinite:应用名为 collection 的动画,动画持续时间为 3 秒,线性播放,无限循环。
  5. <span> 元素:设置为绝对定位,用于显示文本内容,但 font-style: 30px 这里可能存在错误,应该是 font-size 用于设置字体大小,猜测是想设置字体大小为 30 像素。

动画效果

  1. @keyframes drop:定义了 .drop 元素的动画关键帧。
    • 在 0% 处,元素缩小到 0.7 倍并向上移动 600%,透明度为 0。
    • 在 50% 处,元素缩小到 0.4 倍并向上移动 8%,透明度变为 1。
    • 在 100% 处,元素缩小到 0.3 倍并回到初始垂直位置,透明度保持为 1。
  2. @keyframes collection:定义了 .collection 元素的动画关键帧。
    • 在 0% 处,元素保持初始大小和旋转角度。
    • 在 50% 处,元素放大到 1.3 倍并旋转 180 度,同时宽度变为 90 像素,边框的圆角也进行了调整。
    • 在 100% 处,元素恢复到初始大小并旋转 360 度。

完整代码展示

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><link rel="stylesheet" href="./assets/global.css"><style>.container {display: flex;justify-content: center;align-items: center;min-height: 100vh;background-color: #000;flex-direction: column;filter: contrast(30);}.drop {width: 100px;height: 100px;border-radius: 50%;position: absolute;filter: blur(20px);background-color: #fff;opacity: 0;animation: 2.5s drop linear infinite;}.drop:nth-child(2) {transform: translateY(-80px);animation-delay: .5s;}.drop:nth-child(3) {transform: translateY(-130px);animation-delay: .7s;}.collection {width: 100px;height: 100px;border-radius: 50%;background-color: #fff;filter: blur(20px);animation: 3s collection linear infinite;}span {position: absolute;font-style: 30px;}@keyframes drop {0% {transform: scale(.7) translateY(-600%);opacity: 0;}50% {transform: scale(.4) translateY(-8%);opacity: 1;}100% {transform: scale(.3) translateY(0%);opacity: 1;}}@keyframes collection {0% {transform: scale(1) rotate(0deg)}50% {transform: scale(1.3) rotate(180deg);width: 90px;border-top-left-radius: 40%;border-bottom-right-radius: 45%;}100% {transform: scale(1) rotate(360deg);}}</style>
</head><body><div class="container"><div class="drop"></div><div class="drop"></div><div class="drop"></div><div class="collection"></div><span>80%</span></div>
</body></html>

 

http://www.xdnf.cn/news/138565.html

相关文章:

  • 通讯的基础概念:涵盖串行通信、并行通信、TCP、UDP、Socket 等关键概念和技术
  • VRRP与防火墙双机热备实验
  • HW蓝队开源网络流量分析工具 -- TrafficEye
  • 计组1.3——计算机的性能指标
  • Axure疑难杂症:详解设置选中与选中效果(玩转选中)
  • Codeforces Round 1020 (Div. 3)(题解ABCDEF)
  • deep鼠标跟随插件
  • 北斗导航 | 北斗卫星导航单点定位与深度学习结合提升精度
  • 软考【网络工程师】2023年11月上午题答案解析
  • 数据库MySQL学习——day4(更多查询操作与更新数据)
  • 如何设置极狐GitLab 议题截止日?
  • 开源项目实战学习之YOLO11:ultralytics-cfg-datasets-Objects365、open-images-v7.yaml文件(六)
  • ADW600模块:40%体积缩减+多回路智能计量,工业节能的“隐形管家”
  • Docker安装(Ubuntu22版)
  • 【计算机视觉】CV实践- 基于PaddleSeg的遥感建筑变化检测全解析:从U-Net 3+原理到工程实践
  • 什么是 MCP?与 AI Agent 的关系是什么?
  • 14.ArkUI Radio的介绍和使用
  • 实验4:列表与字典应用
  • 机器视觉的胶带模切应用
  • 含锡废水处理的经济效益
  • 【Test】单例模式❗
  • 支持Function Call的本地ollama模型对比评测-》开发代理agent
  • python21-循环小作业
  • 命名空间(C++)
  • 在Dify中创建自定义Drools工具
  • 泽众TestOne精准测试:助力软件开发质量新升级
  • NEGATIVE LABEL GUIDED OOD DETECTION WITH PRETRAINED VISION-LANGUAGE MODELS
  • LeetCode 每日一题 2845. 统计趣味子数组的数目
  • 70.评论日记
  • js数据结构之栈