当前位置:首页 > CSS

css制作滴水动画

2026-03-12 01:09:25CSS

使用CSS制作滴水动画

通过CSS的@keyframestransform属性可以实现逼真的水滴下落效果。以下是一个完整的实现方案:

HTML结构

创建一个简单的HTML容器放置水滴元素:

<div class="water-drop"></div>
<div class="ripple"></div>

CSS动画代码

水滴下落和涟漪效果的核心样式:

.water-drop {
  width: 20px;
  height: 20px;
  background: #00a1ff;
  border-radius: 50%;
  position: absolute;
  left: 50%;
  top: 50px;
  animation: drop 1.5s cubic-bezier(0.65, 0, 0.35, 1) infinite;
}

.ripple {
  width: 20px;
  height: 10px;
  background: rgba(0, 161, 255, 0.3);
  position: absolute;
  left: 50%;
  top: 150px;
  border-radius: 50%;
  animation: ripple 1.5s linear infinite;
  transform: translateX(-50%);
}

@keyframes drop {
  0% {
    transform: translate(-50%, 0) scale(1, 1);
  }
  80% {
    transform: translate(-50%, 100px) scale(0.8, 1.2);
  }
  90% {
    transform: translate(-50%, 105px) scale(1.2, 0.8);
  }
  100% {
    transform: translate(-50%, 100px) scale(0, 0);
  }
}

@keyframes ripple {
  0% {
    opacity: 1;
    transform: translateX(-50%) scale(0.2, 0.2);
  }
  100% {
    opacity: 0;
    transform: translateX(-50%) scale(5, 2);
  }
}

进阶优化技巧

增加多个水滴形成连续效果:

.water-drop:nth-child(2) {
  animation-delay: 0.5s;
}
.water-drop:nth-child(3) {
  animation-delay: 1s;
}

添加物理效果增强真实感:

css制作滴水动画

@keyframes drop {
  0% {
    transform: translate(-50%, 0) scale(1);
    filter: brightness(100%);
  }
  50% {
    filter: brightness(130%);
  }
  90% {
    transform: translate(-50%, 100px) scale(0.9);
    filter: brightness(150%);
  }
  100% {
    transform: translate(-50%, 110px) scale(0);
  }
}

浏览器兼容性说明

  • 现代浏览器均支持此效果
  • 如需兼容旧版浏览器,需添加-webkit-前缀
  • 建议配合will-change: transform属性优化性能

通过调整cubic-bezier时间函数和关键帧比例,可以模拟不同粘稠度液体的下落效果。增加box-shadow属性可创造更立体的水滴视觉效果。

标签: 动画css
分享给朋友:

相关文章

css菜单制作

css菜单制作

基础水平菜单制作 使用无序列表<ul>和<li>标签构建结构,CSS设置横向排列: <ul class="horizontal-menu"> <li&g…

css制作登录界面

css制作登录界面

使用CSS制作登录界面 登录界面是网站常见的功能模块,通过CSS可以实现美观且响应式的设计。以下是一个基础的登录界面实现方法。 HTML结构 基础的HTML结构包含表单元素,如输入框、按钮和标签。…

css制作钢琴块

css制作钢琴块

使用CSS制作钢琴块 钢琴块可以通过HTML和CSS的配合实现,主要利用flexbox布局和伪元素来模拟钢琴的黑白键排列。 HTML结构 <div class="piano"> &l…

css制作tab菜单

css制作tab菜单

CSS制作Tab菜单的方法 HTML结构 使用无序列表和div容器构建基础结构,列表项为标签页标题,div内放置对应内容块。 <ul class="tab-menu"> <li…

css立体相册制作

css立体相册制作

制作CSS立体相册 使用CSS3的3D变换和过渡效果可以创建一个立体相册。以下是一个基本的实现方法。 HTML结构 <div class="photo-album"> <di…

怎么制作css

怎么制作css

理解CSS基础 CSS(层叠样式表)用于控制网页的视觉表现,包括布局、颜色、字体等。CSS通过选择器匹配HTML元素,并为其定义样式规则。例如: p { color: blue; f…