CSS实现水滴样式

html 复制代码
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <div class="water-drop-animated"></div>

    <style>
      body {
        background-color: #f0f2f5;
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100vh;
        margin: 0;
      }

      .water-drop-animated {
        width: 200px;
        height: 200px;
        background-color: #f0f2f5;

        /* 初始形状稍微不规则一点 */
        border-radius: 50%;

        /* 保持之前的拟态阴影 */
        box-shadow: 20px 20px 60px #d1d9e6, -20px -20px 60px #ffffff,
          inset 10px 10px 20px rgba(0, 0, 0, 0.05),
          inset -10px -10px 20px rgba(255, 255, 255, 0.5);

        /* 绑定动画:持续 4 秒,无限循环,平滑过渡 */
        animation: liquid 4s ease-in-out infinite;
        position: relative;
      }

      /* 模拟顶部高光点,让它随水滴一起动 */
      .water-drop-animated::after {
        content: "";
        position: absolute;
        top: 25%;
        left: 25%;
        width: 25px;
        height: 15px;
        background: rgba(255, 255, 255, 0.6);
        border-radius: 50%;
        filter: blur(2px);
        transform: rotate(-45deg);
      }

      /* 定义形状变化的动画 */
      @keyframes liquid {
        0%,
        100% {
          border-radius: 50% 50% 50% 50% / 50% 50% 50% 50%;
          transform: translate(0, 0) rotate(0deg);
        }
        33% {
          /* 变成稍微扁圆的状态 */
          border-radius: 60% 40% 55% 45% / 45% 55% 45% 55%;
          transform: translate(5px, -5px) rotate(2deg);
        }
        66% {
          /* 变成稍微拉长的状态 */
          border-radius: 45% 55% 40% 60% / 55% 45% 60% 40%;
          transform: translate(-5px, 5px) rotate(-2deg);
        }
      }
    </style>
  </body>
</html>
相关推荐
前端小李子1 分钟前
前端环境变量裸奔?我用 EnvShield 给它穿了件防弹衣
前端
youtootech2 分钟前
HarmonyOS《柚兔学伴》项目实战25-我的页面、Web 嵌入与项目总结
前端·华为·harmonyos
小林ixn30 分钟前
从零到一理解 React 父子组件通信:手写一个 Todo 应用带你彻底搞懂单向数据流
前端·javascript·react.js
醇氧2 小时前
CountDownLatch / CyclicBarrier / Semaphore 面试高频问答清单
前端·面试·职场和发展
qetfw3 小时前
MXU:Tauri 2 + React 的 MaaFramework 跨平台 GUI 源码
前端·python·react.js·前端框架·开源项目·效率工具
甲维斯3 小时前
我要开始吹牛逼了!Kimi K3 “宇宙无敌”!
前端·人工智能
a1117763 小时前
微光小屋-前端养成小游戏 开源项目
前端
kyriewen4 小时前
我让AI给前端项目做了一次完整的Code Review——它和人类的差距,比我想的大得多
前端·javascript·ai编程