新增 动画

This commit is contained in:
shengchanzhe 2023-10-13 11:11:50 +08:00
parent 6a6a855373
commit d0b2815367
3 changed files with 154 additions and 0 deletions

View File

@ -0,0 +1,59 @@
<template>
<div class="dots">
<div />
<div />
<div />
<div />
<div />
<div />
<div />
<div />
<div />
</div>
</template>
<style scoped>
.dots {
width: 3em;
height: 3em;
display: grid;
grid-template-rows: repeat(3, 1fr);
grid-template-columns: repeat(3, 1fr);
justify-items: center;
align-items: center;
}
.dots > div {
width: 0.5em;
height: 0.5em;
background-color: #3cefff;
border-radius: 50%;
animation: fade 1.5s alternate ease-in-out infinite;
}
.dots > div:nth-of-type(2),
.dots > div:nth-of-type(4) {
animation-delay: 0.25s;
}
.dots > div:nth-of-type(3),
.dots > div:nth-of-type(5),
.dots > div:nth-of-type(7) {
animation-delay: 0.5s;
}
.dots > div:nth-of-type(6),
.dots > div:nth-of-type(8) {
animation-delay: 0.75s;
}
.dots > div:nth-of-type(9) {
animation-delay: 1s;
}
@keyframes fade {
to {
opacity: 0.2;
}
}
</style>

View File

@ -0,0 +1,44 @@
<template>
<div />
</template>
<style scoped>
div {
position: relative;
width: 2em;
height: 2em;
border: 3px solid #3cefff;
overflow: hidden;
animation: spin 3s ease infinite;
}
div::before {
content: '';
position: absolute;
top: -3px;
left: -3px;
width: 2em;
height: 2em;
background-color: hsla(185, 100%, 62%, 0.75);
transform-origin: center bottom;
transform: scaleY(1);
animation: fill 3s linear infinite;
}
@keyframes spin {
50%,
100% {
transform: rotate(360deg);
}
}
@keyframes fill {
25%,
50% {
transform: scaleY(0);
}
100% {
transform: scaleY(1);
}
}
</style>

View File

@ -0,0 +1,51 @@
<template>
<div>
<span />
<span />
<span />
<span />
</div>
</template>
<style scoped>
div {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: space-between;
width: 2em;
}
span {
width: 0.3em;
height: 1em;
background-color: #3cefff;
}
span:nth-of-type(1) {
animation: grow 1s -0.45s ease-in-out infinite;
}
span:nth-of-type(2) {
animation: grow 1s -0.3s ease-in-out infinite;
}
span:nth-of-type(3) {
animation: grow 1s -0.15s ease-in-out infinite;
}
span:nth-of-type(4) {
animation: grow 1s ease-in-out infinite;
}
@keyframes grow {
0%,
100% {
transform: scaleY(1);
}
50% {
transform: scaleY(2);
}
}
</style>