This commit is contained in:
2025-11-28 17:40:40 +08:00
commit 135696ef93
244 changed files with 37401 additions and 0 deletions

116
public/css/loading.css Normal file
View File

@@ -0,0 +1,116 @@
.loading {
display: flex;
width: 100%;
height: 100%;
justify-content: center;
align-items: center;
flex-direction: column;
background-color: #f4f7f9
}
.loading .loading-wrap {
position: absolute;
top: 50%;
left: 50%;
display: flex;
-webkit-transform: translate3d(-50%, -50%, 0);
transform: translate3d(-50%, -50%, 0);
justify-content: center;
align-items: center;
flex-direction: column
}
.loading .dots {
display: flex;
padding: 98px;
justify-content: center;
align-items: center
}
.loading .loading-title {
display: flex;
font-weight: bold;
margin-top: 30px;
font-size: 18px;
color: rgba(0, 0, 0, .85);
justify-content: center;
align-items: center
}
.dot {
position: relative;
display: inline-block;
width: 40px;
height: 40px;
margin-top: 30px;
font-size: 28px;
transform: rotate(45deg);
box-sizing: border-box;
animation: antRotate 1.2s infinite linear
}
.dot i {
position: absolute;
display: block;
width: 20px;
height: 20px;
background-color: #0065cc;
border-radius: 100%;
opacity: .3;
transform: scale(.75);
animation: antSpinMove 1s infinite linear alternate;
transform-origin: 50% 50%
}
.dot i:nth-child(1) {
top: 0;
left: 0
}
.dot i:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: .4s;
animation-delay: .4s
}
.dot i:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: .8s;
animation-delay: .8s
}
.dot i:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s
}
@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg)
}
}
@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg)
}
}
@keyframes antSpinMove {
to {
opacity: 1
}
}
@-webkit-keyframes antSpinMove {
to {
opacity: 1
}
}

88
public/css/saber.css Normal file
View File

@@ -0,0 +1,88 @@
html,
body,
#app {
height: 100%;
margin: 0;
padding: 0;
}
#loader-wrapper {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 99999;
background-color: #151a26;
}
#loader-wrapper .loader-box {
position: fixed;
left: calc(50% - 250px);
top: calc(50% - 100px);
margin: 0 auto;
width: 500px;
height: 200px;
text-align: center;
vertical-align: center;
font-weight: bold;
color: #87888E;
font-size: 35px;
}
#loader-wrapper .loader-box > span {
opacity: 0.4;
display: inline-block;
animation: bouncingLoader 1s infinite alternate;
}
#loader-wrapper .loader-box > span:nth-child(2) {
animation-delay: 0.1s;
}
#loader-wrapper .loader-box > span:nth-child(3) {
animation-delay: 0.2s;
}
#loader-wrapper .loader-box > span:nth-child(4) {
animation-delay: 0.3s;
}
#loader-wrapper .loader-box > span:nth-child(5) {
animation-delay: 0.4s;
}
#loader-wrapper .loader-box > span:nth-child(6) {
animation-delay: 0.5s;
}
#loader-wrapper .loader-box > span:nth-child(7) {
animation-delay: 0.6s;
}
@keyframes bouncingLoader {
0% {
transform: translateY(0);
}
50% {
transform: translateY(25px);
}
100% {
transform: translateY(0);
}
}
#loader-wrapper .loader-title {
font-weight: bold;
z-index: 1002;
position: absolute;
top: 50%;
margin-top: 15px;
color: #87888E;
font-size: 18px;
width: 100%;
height: 30px;
text-align: center;
opacity: 0.4;
line-height: 30px;
}