液体下载动画效果
代码语言:html
所属分类:动画
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Fluid download animation</title>
<style>
.upload {
width: 66px;
height: 66px;
border-radius: 50%;
position: relative;
border: 2px solid #419AFE;
cursor: pointer;
-webkit-transform: translateZ(0);
transform: translateZ(0);
transition: -webkit-transform .2s ease;
transition: transform .2s ease;
transition: transform .2s ease, -webkit-transform .2s ease;
}
.upload .path {
position: absolute;
left: 50%;
top: 50%;
z-index: 1;
margin: -36px 0 0 -36px;
width: 72px;
height: 72px;
}
.upload .path .arrow {
bottom: 27px;
width: 2px;
height: 21px;
position: absolute;
left: 50%;
border-radius: 1px;
margin: 0 0 0 -1px;
-webkit-transform-origin: 50% 100%;
transform-origin: 50% 100%;
}
.upload .path .arrow:before, .upload .path .arrow:after {
content: '';
display: block;
width: 2px;
height: 14px;
bottom: -2px;
background: #fff;
position: absolute;
border-radius: 1px;
-webkit-transform-origin: 50% 100%;
transform-origin: 50% 100%;
}
.upload .path .arrow:before {
right: 50%;
-webkit-transform: rotate(-44deg) translateX(2px);
transform: rotate(-44deg) translateX(2px);
}
.upload .path .arrow:after {
left: 50%;
-webkit-transform: rotate(44deg) translateX(-2px);
transform: rotate(44deg) translateX(-2px);
}
.upload .path svg {
width: 72px;
height: 72px;
display: block;
fill: none;
stroke: #fff;
stroke-width: 2px;
stroke-linecap: round;
stroke-dashoffset: 592.73;
stroke-dasharray: 0 592.73 20 592.73;
}
.upload .circle {
position: absolute;
width: 58px;
height: 58px;
margin: -29px 0 0 -29px;
border-radius: 50%;
left: 50%;
top: 50%;
overflow: hidden;
}
.upload .circle .water {
-webkit-transform: translateY(116%);
transform: translateY(116%);
background: #419AFE;
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
}
.upload .circle .water svg {
display: block;
width: 116px;
height: 6px;
position: absolute;
bottom: 100%;
}
.upload .circle .water svg:nth-child(1) {
right: 0;
fill: #308FFA;
-webkit-animation: forward 1.65s infinite;
animation: forward 1.65s infinite;
}
.upload .circle .water svg:nth-child(2) {
left: 0;
fill: #419AFE;
margin-bottom: -1px;
-webkit-animation: backward .825s infinite linear;
animation: backward .825s infinite linear;
}
.upload.loading .path {
-webkit-animation: movePath .4s linear forwards;
animation: movePath .4s linear forwards;
}
.upload.loading .path .arrow {
-webkit-animation: arrow .5s linear forwards 3.7s;
animation: arrow .5s linear forwards 3.7s;
}
.upload.loading .path .arrow:before {
-webkit-animation: arrowB .4s linear forwards, arrowBCheck .5s linear forwards 3.7s;
animation: arrowB .4s linear forwards, arrowBCheck .5s linear forwards 3.7s;
}
.upload.loading .path .arrow:after {
-webkit-animation: arrowA .4s linear forwards, arrowACheck .5s linear forwards 3.7s;
animation: arrowA .4s linear forwards, arrowACheck .5s linear forwards 3.7s;
}
.upload.loading .path svg {
-webkit-animation: load 3s linear forwards .45s, reset .7s linear forwards 3.7s;
animation: load 3s linear forwards .45s, reset .7s linear forwards 3.7s;
}
.upload.loading .circle .water {
-webkit-animation: fill 3s linear forwards .45s;
animation: fill 3s linear forwards .45s;
}
.upload:active {
-webkit-transform: scale(0.92) translateZ(0);
transform: scale(0.92) translateZ(0);
}
@-webkit-keyframes load {
0% {
stroke-dashoffset: 592.73;
stroke-dasharray: 0 592.73 20 592.73;
}
42% {
stroke-dasharray: 0 592.73 80 592.73;
}
85% {
stroke-dashoffset: 80;
stroke-dasharray: 0 592.73 32 592.73;
}
100% {
stroke-dashoffset: 32;
stroke-dasharray: 0 592.73 32 592.73;
}
}
@keyframes load {
0% {
stroke-dashoffset: 592.73;
stroke-dasharray: 0 592.73 20 592.73;
}
42% {
stroke-dasharray: 0 592.73 80 592.73;
}
85% {
stroke-dashoffset: 80;
stroke-dasharray: 0 592.73 32 592.73;
}
100% {
stroke-dashoffset: 32;
stroke-dasharray: 0 592.73 32 592.73;
}
}
@-webkit-keyf.........完整代码请登录后点击上方下载按钮下载查看
网友评论0