CSS动画新境界:打造逼真的水罐摇晃动效!

简介: CSS动画新境界:打造逼真的水罐摇晃动效!

先上效果

罐摇动效果模仿水罐倾斜时水面的波动和光影变化。这种效果可以用于网页设计,以创造独特的视觉体验。

完整代码

以下是一个简单的CSS动画示例,用于创建水罐摇动效果:

image.png


  .TankShaking_container .TankShaking_content {
     width: 420px;height: 420px;
     background-image: linear-gradient(90deg, #04182c, #000c17, #04182c);position: relative;
     padding: 100px; box-sizing: border-box;
}
.TankShaking_container .TankShaking_content .TankShaking_bottle {
    animation: TankShaking_animate__s7STs 2s linear infinite;
    background-color: hsla(0,0%,100%,.102);
    border-radius: 50%;
    height: 200px;
    position: relative;
    transform-origin: bottom center;
    width: 200px;
    z-index: 2
}

.TankShaking_container .TankShaking_content .TankSha king_bottle:before {
    background-color: #505250;
    border-radius: 50%;
    box-shadow: 0 6.6666666667px 5px #000;
    content: "";
    height: 40px;
    left: 50%;
    position: absolute;
    top: -5px;
    transform: translate(-50%);
    width: 100px

}

.TankShaking_container .TankShaking_content .TankShaking_bottle .TankShaking_water {
    animation: TankShaking_animate2__M8tPD 2s linear infinite;
    background-color: #41c1fb;
    border-bottom-left-radius: 100px;
    border-bottom-right-radius: 100px;
    bottom: 10px;
    left: 10px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform-origin: top center
}
.TankShaking_container .TankShaking_content .TankShaking_bottle .TankShaking_water:before {
    background-color: #0da2e7;
    border-radius: 50%;
    content: "";
    height: 20px;
    left: 0;
    position: absolute;
    top: -10px;
    width: 100%
}
.TankShaking_container .TankShaking_content .TankShaking_bottleBottom {
    animation: TankShaking_move__yUHoY 2s linear infinite;
    background-color: #00000080;
    border-radius: 50%;
    height: 30px;
    left: 50%;
    position: absolute;
    top: calc(100% - 66px);
    transform: translateX(-50%);
    width: 200px
}

@keyframes TankShaking_animate__s7STs {
    0% {
        transform: rotate(0)
    }
    25% {
        transform: rotate(15deg)
    }
    50% {
        transform: rotate(0)
    }
    75% {
        transform: rotate(-15deg)
    }
    to {
        transform: rotate(0)
    }
}

@keyframes TankShaking_animate2__M8tPD {
    0% {
        filter: drop-shadow(0 0 50px #41c1fb) hue-rotate(0deg);
        transform: rotate(0)
    }
    25% {
        transform: rotate(-15deg)
    }
    50% {
        transform: rotate(0)
    }
    75% {
        transform: rotate(15deg)
    }
    to {
        filter: drop-shadow(0 0 50px #41c1fb) hue-rotate(1turn);
        transform: rotate(0)
    }
}

@keyframes TankShaking_move__yUHoY {
    0% {
        transform: translateX(-50%)
    }
    25% {
        transform: translateX(calc(-50% + 20px))
    }
    50% {
        transform: translateX(-50%)
    }
    75% {
        transform: translateX(calc(-50% - 20px))
    }
    to {
        transform: translateX(-50%)
    }
}
相关文章
|
8月前
|
前端开发 JavaScript
CSS 过渡和动画
CSS过渡和动画是用于为网页元素添加动态效果的两种重要技术
263 73
|
4月前
|
存储 前端开发 JavaScript
仿真银行app下载安装, 银行卡虚拟余额制作app,用html+css+js实现逼真娱乐工具
这是一个简单的银行账户模拟器项目,用于学习前端开发基础。用户可进行存款、取款操作,所有数据存储于浏览器内存中
|
12月前
|
机器学习/深度学习 前端开发 JavaScript
CSS动画知识点
CSS动画知识点
|
9月前
css3 svg制作404页面动画效果HTML源码
css3 svg制作404页面动画效果HTML源码
147 34
|
11月前
|
移动开发 前端开发 JavaScript
除了 CSS3,还有哪些技术可以实现动画效果?
除了 CSS3,还有哪些技术可以实现动画效果?
314 63
|
11月前
|
JavaScript 前端开发
CSS3 动画和 JavaScript 动画的性能比较
具体的性能表现还会受到许多因素的影响,如动画的复杂程度、浏览器的性能、设备的硬件条件等。在实际应用中,需要根据具体情况选择合适的动画技术。
|
11月前
|
Web App开发 前端开发 JavaScript
如何在不牺牲动画效果的前提下,优化 CSS3 动画的性能?
如何在不牺牲动画效果的前提下,优化 CSS3 动画的性能?
499 58
|
9月前
jQuery+CSS3实现404背景游戏动画源码
jQuery+CSS3实现404背景游戏动画源码
122 22
|
12月前
|
前端开发 搜索推荐 UED
实现 CSS 动画效果的兼容性
【10月更文挑战第16天】实现 CSS 动画效果的兼容性需要对不同浏览器的特性有深入的了解,并采取适当的策略和方法。通过不断的实践和优化,你可以在各种浏览器上创造出流畅、美观且兼容的动画效果,为用户带来更好的体验。在实际开发中,要密切关注浏览器的发展动态,及时掌握最新的兼容性技巧和解决方案,以确保你的动画设计能够在广泛的用户群体中得到良好的呈现。
275 58
|
11月前
纯css3实现的百分比渐变进度条加载动画源码
纯css3实现的百分比渐变进度条加载动画特效源码
183 31