css实现水滴落下散开动画效果
代码语言:html
所属分类:动画
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<style>
body {
display: grid;
place-content: end center;
overflow: hidden;
margin: 0;
height: 100vh;
background: #000;
}
.canv {
--rdist: calc(1em*var(--f));
--p3d: perspective(20em);
position: relative;
padding: calc(var(--rdist) + 1em);
background: #000;
filter: contrast(19);
animation: fall 2s ease-in infinite;
}
@keyframes fall {
0% {
transform: var(--p3d) translatey(-100vh) scale(0.25) rotatex(0deg);
}
32% {
transform: var(--p3d) translatey(0) scale(0.35, 0.75) rotatex(0deg);
}
33% {
transform: var(--p3d) translatey(0) scale(0.85, 0.35) rotatex(0deg);
}
35%, 100% {
transform: var(--p3d) translatey(0) scale(1) rotatex(75deg);
}
}
.drop {
--rdrop: calc(var(--s)*1em);
--adrop: var(--k)*1turn/var(--n);
position: absolute;
top: 50%;
left: 50%;
margin: calc(-1*var(--rdrop));
padding: var(--rdrop);
border-radius: 50%;
transform: rotate(calc(var(--adrop) - 45deg)) translate(var(--rdist)) scale(0, calc(var(--s)*.5));
background: dodgerblue;
filter: blur(5px);
animation: wave 2s ease-out infinite;
}
@keyframes wave {
0%, 32% {
border-radius: 3px 25% 25% 75%;
transform: rotate(-45deg) translatey(calc(var(--s)*1em)) scale(1);
}
35% {
border-radius: 50%;
transform: rotate(calc(var(--adrop) - 45deg)) translate(0) scale(1);
}
}
</style>
</head>
<body translate="no">
<div class="canv" style=&.........完整代码请登录后点击上方下载按钮下载查看
网友评论0