40款一个div+css实现的loading加载动画效果代码
代码语言:html
所属分类:加载滚动
代码描述:40款一个div+css实现的loading加载动画效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Podkova:400,700'>
<style>
@charset "UTF-8";
/**
* Computes a CSS calc function that betweens a value from
* A to B over viewport-width A to viewport-width B.
* Requires a media query to cap the value at B.
*/
i {
font-style: oblique;
}
[class*=loader] {
position: relative;
top: 40%;
display: inline-block;
margin: 0 auto;
cursor: wait;
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.loader-playflix-button {
display: flex;
font-size: 0.75em;
font-family: 'Podkova', serif;
height: 3em;
border-radius: 0.25em;
background-color: #083D56;
color: #19A6CF;
overflow: hidden;
counter-reset: playflix-counter 5;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
border: none;
cursor: pointer;
transition: all 0.25s;
-webkit-animation: playflix-text 5s linear infinite forwards;
animation: playflix-text 5s linear infinite forwards;
}
.loader-playflix-button:hover {
background-color: #0b4e66;
}
.loader-playflix-button:active {
color: #fff;
}
.loader-playflix-button:active, .loader-playflix-button:active:after, .loader-playflix-button:active:before {
-webkit-animation: none;
animation: none;
}
.loader-playflix-button:active:before {
background-color: #080;
width: calc(100% + 1em);
counter-reset: playflix-counter 0;
}
.loader-playflix-button:before, .loader-playflix-button:after {
pointer-events: none;
}
.loader-playflix-button:before {
content: attr(data-icon);
font-size: 2em;
line-height: 1.2;
position: absolute;
width: 0%;
left: -0.5em;
top: 0;
z-index: 0;
text-align: left;
padding: 0.25em;
text-indent: 0.5em;
-webkit-animation: playflix 5s linear infinite forwards;
animation: playflix 5s linear infinite forwards;
}
.loader-playflix-button:after {
content: attr(data-label) " " counter(playflix-counter);
font-weight: 700;
display: block;
font-size: 1.5em;
line-height: 1;
padding: 0.5em;
position: relative;
white-space: nowrap;
-webkit-animation: playflix-countdown 5s linear infinite forwards;
animation: playflix-countdown 5s linear infinite forwards;
}
.loader-playflix-button[data-icon]:not([data-icon=""]):after {
padding-left: 2em;
}
@-webkit-keyframes playflix {
0% {
width: 0%;
background-color: #0E5F76;
}
89% {
width: calc(100% + .5em);
background-color: #0E5F76;
}
89.5%, 100% {
width: calc(100% + .5em);
background-color: #080;
}
}
@keyframes playflix {
0% {
width: 0%;
background-color: #0E5F76;
}
89% {
width: calc(100% + .5em);
background-color: #0E5F76;
}
89.5%, 100% {
width: calc(100% + .5em);
background-color: #080;
}
}
@-webkit-keyframes playflix-countdown {
0% {
counter-increment: playflix-counter 0;
}
20% {
counter-increment: playflix-counter -1;
}
40% {
counter-increment: playflix-counter -2;
}
60% {
counter-increment: playflix-counter -3;
}
80% {
counter-increment: playflix-counter -4;
}
100% {
counter-increment: playflix-counter -5;
}
}
@keyframes playflix-countdown {
0% {
counter-increment: playflix-counter 0;
}
20% {
counter-increment: playflix-counter -1;
}
40% {
counter-increment: playflix-counter -2;
}
60% {
counter-increment: playflix-counter -3;
}
80% {
counter-increment: playflix-counter -4;
}
100% {
counter-increment: playflix-counter -5;
}
}
@-webkit-keyframes playflix-text {
0%, 89% {
color: #19A6CF;
}
89.5%, 100% {
color: #fff;
}
}
@keyframes playflix-text {
0%, 89% {
color: #19A6CF;
}
89.5%, 100% {
color: #fff;
}
}
.loader-wobble {
font-size: 0.8em;
top: 50%;
display: inline-block;
width: 5em;
height: 1em;
line-height: 1.3;
position: relative;
color: #0E5F76;
text-align: center;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
border-bottom: 0.1em solid;
margin-left: -5em;
transform: translateX(50%);
-webkit-animation: loadingText 1s infinite cubic-bezier(1, -2.3, 1, 2.5) alternate, loadingBar 8s infinite cubic-bezier(0.445, 0.050, 0.550, 0.950) alternate;
animation: loadingText 1s infinite cubic-bezier(1, -2.3, 1, 2.5) alternate, loadingBar 8s infinite cubic-bezier(0.445, 0.050, 0.550, 0.950) alternate;
}
#toggle:checked ~ #sect .loader-wobble {
-webkit-animation: loadingTextMove 1s infinite cubic-bezier(1, -2.3, 1, 2.5) alternate, loadingText 1s infinite cubic-bezier(1, -2.3, 1, 2.5) alternate, loadingBar 8s infinite cubic-bezier(0.445, 0.050, 0.550, 0.950) alternate;
animation: loadingTextMove 1s infinite cubic-bezier(1, -2.3, 1, 2.5) alternate, loadingText 1s infinite cubic-bezier(1, -2.3, 1, 2.5) alternate, loadingBar 8s infinite cubic-bezier(0.445, 0.050, 0.550, 0.950) alternate;
filter: drop-shadow(0.2em 0.2em 0.2em rgba(0, 0, 0, 0.5));
}
.loader-wobble:before, .loader-wobble:after {
content: "";
width: 7em;
height: 7em;
position: absolute;
top: -3em;
left: -0.5em;
right: 0;
bottom: 0;
border-radius: 50%;
}
.loader-wobble:before {
box-shadow: inset 0 0 0 0.2em rgba(8, 61, 86, 0.5);
-webkit-animation: loadingInner 1s infinite cubic-bezier(1, -2.3, 1, 2.5) alternate;
animation: loadingInner 1s infinite cubic-bezier(1, -2.3, 1, 2.5) alternate;
}
.loader-wobble:after {
color: #083D56;
border-radius: 50%;
border: 0.2em dashed;
border-top: 0.2em solid #0E5F76;
transform-origin: center center;
-webkit-animation: loading 1s infinite cubic-bezier(0.6, 0, 0.4, 1);
animation: loading 1s infinite cubic-bezier(0.6, 0, 0.4, 1);
}
@-webkit-keyframes loading {
to {
transform: rotate(360deg);
}
}
@keyframes loading {
to {
transform: rotate(360deg);
}
}
@-webkit-keyframes loadingInner {
to {
transform: scale(0);
}
}
@keyframes loadingInner {
to {
transform: scale(0);
}
}
@-webkit-keyframes loadingText {
0% {
color: #0E5F76;
width: 0em;
}
100% {
color: #081E3F;
width: 4em;
}
}
@keyframes loadingText {
0% {
color: #0E5F76;
width: 0em;
}
100% {
color: #081E3F;
width: 4em;
}
}
@-webkit-keyframes loadingTextMove {
0% {
text-indent: 1em;
}
100% {
text-indent: -1em;
}
}
@keyframes loadingTextMove {
0% {
text-indent: 1em;
}
100% {
text-indent: -1em;
}
}
@-webkit-keyframes loadingBar {
0% {
width: 0em;
}
100% {
width: 6em;
}
}
@keyframes loadingBar {
0% {
width: 0em;
}
100% {
width: 6em;
}
}
.loader-bricks {
position: relative;
display: inline-block;
font-size: 1rem;
width: 8em;
height: 1em;
z-index: 1;
border-style: solid;
border-width: 0.1rem 0;
color: #19A6CF;
background-image: linear-gradient(to right, transparent 0%, transparent 49.9%, #0E5F76 50%, #0E5F76 100%);
background-size: 25%;
-webkit-animation: loaderBar 1s infinite linear;
animation: loaderBar 1s infinite linear;
}
#toggle:checked ~ #sect .loader-bricks {
filter: drop-shadow(0.3em 0.3em 0.3em rgba(0, 0, 0, 0.5));
}
.loader-bricks:before, .loader-bricks:after {
content: "";
position: absolute;
right: 0;
z-index: 0;
width: 1em;
height: 1em;
margin-top: -0.1rem;
border: 0.1rem solid #19A6CF;
border-width: 0.1rem 0;
color: #0E5F76;
background-color: currentColor;
-webkit-animation: loaderBox 2s infinite linear;
animation: loaderBox 2s infinite linear;
}
.loader-bricks:after {
-webkit-animation-delay: 1s;
animation-delay: 1s;
}
@-webkit-keyframes loaderBar {
0% {
background-position-x: 0;
}
100% {
background-position-x: 2em;
}
}
@keyframes loaderBar {
0% {
background-position-x: 0;
}
100% {
background-position-x: 2em;
}
}
@-webkit-keyframes loaderBox {
0% {
color: #0E5F76;
width: 1em;
right: 0;
top: 0;
border-color: #19A6CF;
}
27% {
color: #0E5F76;
width: 1em;
right: -1em;
top: 0;
border-color: transparent;
}
37.5% {
color: #083D56;
width: 1em;
right: -1em;
top: -1em;
border-color: transparent;
}
50% {
color: #083D56;
width: 1em;
right: 8em;
top: -1em;
border-color: transparent;
}
55% {
color: #0E5F76;
width: 1em;
right: 8em;
top: 0em;
border-color: transparent;
}
100% {
color: #0E5F76;
width: 0em;
right: 7em;
top: 0;
border-color: #19A6CF;
}
}
@keyframes loaderBox {
0% {
color: #0E5F76;
width: 1em;
right: 0;
top: 0;
border-color: #19A6CF;
}
27% {
color: #0E5F76;
width: 1em;
right: -1em;
top: 0;
border-color: transparent;
}
37.5% {
color: #083D56;
width: 1em;
right: -1em;
top: -1em;
border-color: transparent;
}
50% {
color: #083D56;
width: 1em;
right: 8em;
top: -1em;
border-color: transparent;
}
55% {
color: #0E5F76;
width: 1em;
right: 8em;
top: 0em;
border-color: transparent;
}
100% {
color: #0E5F76;
width: 0em;
right: 7em;
top: 0;
border-color: #19A6CF;
}
}
.loader-funky-bar {
display: inline-block;
width: 5em;
height: 1em;
border-radius: 2px;
position: relative;
overflow: hidden;
z-index: 0;
color: #fff;
box-shadow: 0 0 0 2px #081E3F, 0 0 0 4px #0E5F76;
}
#toggle:checked ~ #sect .loader-funky-bar {
filter: drop-shadow(0.25em 0.25em 0.25em rgba(0, 0, 0, 0.5));
}
.loader-funky-bar:before {
content: "loading...";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: 0;
-webkit-animation: loaderText 1s infinite alternate cubic-bezier(0.55, 0.15, 0.45, 0.85);
animation: loaderText 1s infinite alternate cubic-bezier(0.55, 0.15, 0.45, 0.85);
}
#toggle:checked ~ #sect .loader-funky-bar:before {
-webkit-animation: loaderText 2s infinite alternate cubic-bezier(0.55, 0.15, 0.45, 0.85), textIndent 1s infinite alternate cubic-bezier(0.55, 0.15, 0.45, 0.85);
animation: loaderText 2s infinite alternate cubic-bezier(0.55, 0.15, 0.45, 0.85), textIndent 1s infinite alternate cubic-bezier(0.55, 0.15, 0.45, 0.85);
}
.loader-funky-bar:after {
content: "";
width: 11em;
height: 11em;
position: absolute;
left: -6em;
top: -5em;
z-index: 1;
box-shadow: inset 0 0 0 0.5em #0E5F76, inset 0 0 0 1em #083D56, inset 0 0 0 1.5em #0E5F76, inset 0 0 0 2em #083D56, inset 0 0 0 2.5em #0E5F76, inset 0 0 0 3em #083D56, inset 0 0 0 3.5em #0E5F76, inset 0 0 0 4em #083D56, inset 0 0 0 4.5em #0E5F76, inset 0 0 0 5em #083D56, inset 0 0 0 5.5em #0E5F76, inset 0 0 0 6em #083D56;
border-radius: 16em 14em/16em 20em;
transform-origin: center center;
-webkit-animation: loaderRotate 5s linear infinite, loaderMover 15s linear infinite;
animation: loaderRotate 5s linear infinite, loaderMover 15s linear infinite;
}
@-webkit-keyframes loaderRotate {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
@keyframes loaderRotate {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
@-webkit-keyframes loaderMover {
from {
left: -11em;
}
to {
left: -6em;
}
}
@keyframes loaderMover {
from {
left: -11em;
}
to {
left: -6em;
}
}
@-webkit-keyframes textIndent {
from {
text-indent: -2em;
}
to {
text-indent: 2em;
}
}
@keyframes textIndent {
from {
text-indent: -2em;
}
to {
text-indent: 2em;
}
}
@-webkit-keyframes loaderText {
from {
color: #19A6CF;
}
to {
color: #081E3F;
}
}
@keyframes loaderText {
from {
color: #19A6CF;
}
to {
color: #081E3F;
}
}
.loader-drippy {
display: inline-block;
position: relative;
width: 3em;
height: 3em;
top: 30%;
border-radius: 50% 0em 50% 50%;
box-shadow: 0 0 0 0.25em #081E3F, 0 0 0 0.5em #0E5F76;
transform: rotate(135deg);
}
#toggle:checked ~ #sect .loader-drippy {
box-shadow: 0 0 0 0.25em #081E3F, 0 0 0 0.5em #0E5F76, -0.2em -0.2em 0.2em 0.5em rgba(0, 0, 0, 0.25);
}
.loader-drippy:before {
content: "";
position: absolute;
display: block;
border-radius: 50% 0em 50% 50%;
overflow: hidden;
z-index: 0;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-image: repeating-linear-gradient(45deg, #083D56 0, #083D56 9px, transparent 10px, transparent 19px);
background-position: center center;
background-size: 100% 100%;
-webkit-animation: loaderZoom 1s cubic-bezier(0.3, 0.1, 0.3, 0.85) infinite;
animation: loaderZoom 1s cubic-bezier(0.3, 0.1, 0.3, 0.85) infinite;
}
.loader-drippy:after {
content: "";
width: 1em;
height: 1em;
position: absolute;
bottom: 90%;
left: 90%;
z-index: -2;
border-radius: 50%;
background-color: #083D56;
box-shadow: inset -0.05em -0.25em 0.05em #0E5F76;
-webkit-animation: loaderDrip 3s cubic-bezier(0.5, 0.8, 0.5, 0.2) infinite forwards;
animation: loaderDrip 3s cubic-bezier(0.5, 0.8, 0.5, 0.2) infinite forwards;
}
#toggle:checked ~ #sect .loader-drippy:after {
box-shadow: inset -0.05em -0.25em 0.05em #0E5F76, -0.2em -0.2em 0.2em rgba(0, 0, 0, 0.25);
}
@-webkit-keyframes loaderZoom {
from {
background-size: 200% 200%;
}
to {
background-size: 141% 141%;
}
}
@keyframes loaderZoom {
from {
background-size: 200% 200%;
}
to {
background-size: 141% 141%;
}
}
@-webkit-keyframes loaderDrip {
0% {
bottom: 105%;
left: 105%;
width: 0.1em;
height: 0.1em;
border-radius: 3em 3em 3em 3em;
opacity: 1;
}
70% {
bottom: 120%;
left: 120%;
width: 1em;
height: 1em;
border-radius: 6em 6em 6em 0;
opacity: 1;
}
80% {
bottom: 130%;
left: 130%;
border-radius: 3em 6em;
opacity: 1;
}
94% {
bottom: 150%;
left: 150%;
border-radius: 2em 6em;
opacity: 1;
}
100% {
bottom: 150%;
left: 150%;
border-radius: 0.5em 6em;
opacity: 0;
}
}
@keyframes loaderDrip {
0% {
bottom: 105%;
left: 105%;
width: 0.1em;
height: 0.1em;
border-radius: 3em 3em 3em 3em;
opacity: 1;
}
70% {
bottom: 120%;
left: 120%;
width: 1em;
height: 1em;
border-radius: 6em 6em 6em 0;
opacity: 1;
}
80% {
bottom: 130%;
left: 130%;
border-radius: 3em 6em;
opacity: 1;
}
94% {
bottom: 150%;
left: 150%;
border-radius: 2em 6em;
opacity: 1;
}
100% {
bottom: 150%;
left: 150%;
border-radius: 0.5em 6em;
opacity: 0;
}
}
.loader-stopwatch {
display: inline-block;
position: relative;
top: 30%;
width: 5em;
height: 5em;
border-radius: 50%;
border: 0.38em dotted rgba(14, 95, 118, 0.5);
transform-origin: center -300%;
}
#toggle:checked ~ #sect .loader-stopwatch {
-webkit-animation: rotateClock 5s infinite ease-in-out;
animation: rotateClock 5s infinite ease-in-out;
filter: drop-shadow(0.2em 0.2em 0.2em rgba(0, 0, 0, 0.5));
}
.loader-stopwatch:before {
content: "";
position: absolute;
left: 50%;
top: 2.14em;
z-index: 1;
display: block;
height: 2em;
width: 0;
transform-origin: center top;
box-shadow: 0 0 0 0.11em #0E5F76;
-webkit-animation: rotatePointer 3s infinite steps(30) linear;
animation: rotatePointer 3s infinite steps(30) linear;
}
.loader-stopwatch:after {
content: "•";
position: absolute;
left: 0.7em;
top: 0.7em;
width: 3em;
height: 3em;
line-height: 0;
color: transparent;
text-indent: 3em;
text-shadow: -3px -5px 3px #19A6CF;
border-radius: 50% 0 50% 50%;
border: 3px solid #0E5F76;
background-color: #083D56;
transform-origin: center center;
-webkit-animation: rotatePointer 10s infinite linear;
animation: rotatePointer 10s infinite linear;
}
@-webkit-keyframes rotatePointer {
to {
transform: rotate(359deg);
}
}
@keyframes rotatePointer {
to {
transform: rotate(359deg);
}
}
@-webkit-keyframes rotateClock {
0%, 100% {
transform: rotate(-10deg);
}
50% {
transform: rotate(10deg);
}
}
@keyframes rotateClock {
0%, 100% {
transform: rotate(-10deg);
}
50% {
transform: rotate(10deg);
}
}
.loader-peace-sign {
display: inline-block;
position: relative;
border-radius: 50%;
border: 0.5em solid currentColor;
top: 30%;
width: 5em;
height: 5em;
color: #083D56;
text-align: center;
background-color: rgba(14, 95, 118, 0.75);
-webkit-animation: peace 2s infinite cubic-bezier(1, -2.3, 1, 2.5) alternate, boxFill 15s infinite ease-out;
animation: peace 2s infinite cubic-bezier(1, -2.3, 1, 2.5) alternate, boxFill 15s infinite ease-out;
}
.loader-peace-sign:before, .loader-peace-sign:after {
content: "";
position: absolute;
display: block;
}
.loader-peace-sign:before {
top: 0;
left: 1.8em;
height: 4.2em;
width: 0;
border-left: solid 0.5em currentColor;
}
.loader-peace-sign:after {
height: 2.5em;
width: 2.5em;
bottom: -0.5em;
left: 0.78em;
transform-origin: center center;
border: solid currentColor;
border-width: 0.5em 0.5em 0 0;
transform: rotate(-45deg);
}
@-webkit-keyframes peace {
to {
color: #083D56;
transform: scale(1.2) rotate(-10deg);
}
}
@keyframes peace {
to {
color: #083D56;
transform: scale(1.2) rotate(-10deg);
}
}
@-webkit-keyframes boxFill {
0% {
box-shadow: inset 0 5em 0 #081E3F, 0 0 0 #083D56;
}
90%, 93%, 100% {
box-shadow: inset 0 0 0 #081E3F, 0 0 0 #083D56;
}
92% {
box-shadow: inset 0 0 0 #081E3F, 0 0 2em 0.5em #083D56;
}
}
@keyframes boxFill {
0% {
box-shadow: inset 0 5em 0 #081E3F, 0 0 0 #083D56;
}
90%, 93%, 100% {
box-shadow: inset 0 0 0 #081E3F, 0 0 0 #083D56;
}
92% {
box-shadow: inset 0 0 0 #081E3F, 0 0 2em 0.5em #083D56;
}
}
.loader-bubble-disks {
position: relative;
display: inline-block;
margin: 0 auto;
width: 3em;
height: 3em;
transform: translateX(-50%);
}
.loader-bubble-disks:before, .loader-bubble-disks:after {
content: "";
width: 100%;
height: 100%;
position: absolute;
border-radius: 50%;
color: rgba(14, 95, 118, 0.25);
background-color: currentColor;
-webkit-animation: scaleCircles 2s infinite cubic-bezier(0.55, 0.15, 0.45, 0.85) alternate;
animation: scaleCircles 2s infinite cubic-bezier(0.55, 0.15, 0.45, 0.85) alternate;
}
#toggle:checked ~ #sect .loader-bubble-disks:before, #toggle:checked ~ #sect .loader-bubble-disks:after {
box-shadow: 0.1em 0.1em 0.1em rgba(0, 0, 0, 0.25);
}
.loader-bubble-disks:after {
-webkit-animation-delay: -1s;
animation-delay: -1s;
}
@-webkit-keyframes scaleCircles {
0% {
z-index: 1;
transform: scale3d(0, 0, 0);
}
100% {
z-index: 2;
transform: scale3d(1, 1, 1);
}
}
@keyframes scaleCircles {
0% {
z-index: 1;
transform: scale3d(0, 0, 0);
}
100% {
z-index: 2;
transform: scale3d(1, 1, 1);
}
}
.loader-cycle-disks {
position: relative;
display: inline-block;
margin: 0 auto;
width: 4em;
height: 2em;
}
#toggle:checked ~ #sect .loade.........完整代码请登录后点击上方下载按钮下载查看
















网友评论0