This one is messing with my head, but I like it! :-D
A Pen by Reinier Kaper on CodePen.
| <div class="loader"> | |
| <div class="dots"> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| </div> | |
| <div class="dots"> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| </div> | |
| <div class="dots"> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| </div> | |
| <div class="dots"> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| </div> | |
| <div class="dots"> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| </div> | |
| <div class="dots"> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| <div class="dot"></div> | |
| </div> | |
| </div> |
This one is messing with my head, but I like it! :-D
A Pen by Reinier Kaper on CodePen.
| <script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> |
| /** | |
| * Document defaults | |
| */ | |
| body { | |
| text-align: center; | |
| background-color: #eee; | |
| } | |
| * { | |
| -webkit-box-sizing: border-box; | |
| -moz-box-sizing: border-box; | |
| box-sizing: border-box; | |
| } | |
| /* The loader */ | |
| .loader { | |
| position: absolute; | |
| top: 50%; | |
| left: 50%; | |
| overflow: hidden; | |
| width: 200px; | |
| height: 200px; | |
| margin-top: -100px; | |
| margin-left: -100px; | |
| perspective: 1000px; | |
| transform-style: perserve-3d; | |
| } | |
| /* The dots */ | |
| .dots { | |
| position: absolute; | |
| top: 0; | |
| left: 0; | |
| width: 100%; | |
| height: 100%; | |
| perspective: 200px; | |
| transform-style: perserve-3d; | |
| animation: dots 10000ms linear infinite; | |
| } | |
| .dots:nth-child(1) { animation-name: dots; } | |
| .dots:nth-child(2) { animation-name: dots2; } | |
| .dots:nth-child(3) { animation-name: dots3; } | |
| .dots:nth-child(4) { animation-name: dots4; } | |
| .dots:nth-child(5) { animation-name: dots5; } | |
| .dots:nth-child(6) { animation-name: dots6; } | |
| @keyframes dots { | |
| 0% { | |
| transform: rotateX(30deg) rotateZ(0deg) translateZ(-50px); | |
| } | |
| 50% { | |
| transform: rotateX(60deg) rotateZ(5760deg) translateZ(-100px); | |
| } | |
| 100% { | |
| transform: rotateX(30deg) rotateZ(11520deg) translateZ(-50px); | |
| } | |
| } | |
| @keyframes dots2 { | |
| 0% { | |
| transform: rotateX(30deg) rotateZ(0deg) translateZ(-36px); | |
| } | |
| 50% { | |
| transform: rotateX(60deg) rotateZ(2880deg) translateZ(-72px); | |
| } | |
| 100% { | |
| transform: rotateX(30deg) rotateZ(5760deg) translateZ(-36px); | |
| } | |
| } | |
| @keyframes dots3 { | |
| 0% { | |
| transform: rotateX(30deg) rotateZ(0deg) translateZ(-24px); | |
| } | |
| 50% { | |
| transform: rotateX(60deg) rotateZ(1440deg) translateZ(-48px); | |
| } | |
| 100% { | |
| transform: rotateX(30deg) rotateZ(2880deg) translateZ(-24px); | |
| } | |
| } | |
| @keyframes dots4 { | |
| 0% { | |
| transform: rotateX(30deg) rotateZ(0deg) translateZ(-14px); | |
| } | |
| 50% { | |
| transform: rotateX(60deg) rotateZ(720deg) translateZ(-28px); | |
| } | |
| 100% { | |
| transform: rotateX(30deg) rotateZ(1440deg) translateZ(-14px); | |
| } | |
| } | |
| @keyframes dots5 { | |
| 0% { | |
| transform: rotateX(30deg) rotateZ(0deg) translateZ(-6px); | |
| } | |
| 50% { | |
| transform: rotateX(60deg) rotateZ(360deg) translateZ(-12px); | |
| } | |
| 100% { | |
| transform: rotateX(30deg) rotateZ(720deg) translateZ(-6px); | |
| } | |
| } | |
| @keyframes dots6 { | |
| 0% { | |
| transform: rotateX(30deg) rotateZ(0deg) translateZ(0px); | |
| } | |
| 50% { | |
| transform: rotateX(60deg) rotateZ(180deg) translateZ(-3px); | |
| } | |
| 100% { | |
| transform: rotateX(30deg) rotateZ(360deg) translateZ(0px); | |
| } | |
| } | |
| /* The dot */ | |
| .dot { | |
| position: absolute; | |
| top: 50%; | |
| left: 50%; | |
| width: 10px; | |
| height: 10px; | |
| margin-left: -5px; | |
| margin-top: -5px; | |
| border-radius: 100px; | |
| background-color: #1e3f57; | |
| transform-style: perserve-3d; | |
| transform: rotateZ(0) translateY(0); | |
| } | |
| .dots:nth-child(6) .dot { background-color: #1e3f57; } | |
| .dots:nth-child(1) .dot:nth-child(1) { transform: rotateZ(0) translateY(-10px); } | |
| .dots:nth-child(1) .dot:nth-child(2) { transform: rotateZ(90deg) translateY(-10px) translateZ(-140px); } | |
| .dots:nth-child(1) .dot:nth-child(3) { transform: rotateZ(180deg) translateY(-10px); } | |
| .dots:nth-child(1) .dot:nth-child(4) { transform: rotateZ(270deg) translateY(-10px) translateZ(-140px); } | |
| .dots:nth-child(5) .dot { background-color: #295068; } | |
| .dots:nth-child(2) .dot:nth-child(1) { transform: rotateZ(0) translateY(-22px); } | |
| .dots:nth-child(2) .dot:nth-child(2) { transform: rotateZ(45deg) translateY(-22px) translateZ(-120px); } | |
| .dots:nth-child(2) .dot:nth-child(3) { transform: rotateZ(90deg) translateY(-22px); } | |
| .dots:nth-child(2) .dot:nth-child(4) { transform: rotateZ(135deg) translateY(-22px) translateZ(-120px); } | |
| .dots:nth-child(2) .dot:nth-child(5) { transform: rotateZ(180deg) translateY(-22px); } | |
| .dots:nth-child(2) .dot:nth-child(6) { transform: rotateZ(225deg) translateY(-22px) translateZ(-120px); } | |
| .dots:nth-child(2) .dot:nth-child(7) { transform: rotateZ(270deg) translateY(-22px); } | |
| .dots:nth-child(2) .dot:nth-child(8) { transform: rotateZ(315deg) translateY(-22px) translateZ(-120px); } | |
| .dots:nth-child(4) .dot { background-color: #3b6a83; } | |
| .dots:nth-child(3) .dot:nth-child(1) { transform: rotateZ(0) translateY(-34px); } | |
| .dots:nth-child(3) .dot:nth-child(2) { transform: rotateZ(30deg) translateY(-34px) translateZ(-100px); } | |
| .dots:nth-child(3) .dot:nth-child(3) { transform: rotateZ(60deg) translateY(-34px); } | |
| .dots:nth-child(3) .dot:nth-child(4) { transform: rotateZ(90deg) translateY(-34px) translateZ(-100px); } | |
| .dots:nth-child(3) .dot:nth-child(5) { transform: rotateZ(120deg) translateY(-34px); } | |
| .dots:nth-child(3) .dot:nth-child(6) { transform: rotateZ(150deg) translateY(-34px) translateZ(-100px); } | |
| .dots:nth-child(3) .dot:nth-child(7) { transform: rotateZ(180deg) translateY(-34px); } | |
| .dots:nth-child(3) .dot:nth-child(8) { transform: rotateZ(210deg) translateY(-34px) translateZ(-100px); } | |
| .dots:nth-child(3) .dot:nth-child(9) { transform: rotateZ(240deg) translateY(-34px); } | |
| .dots:nth-child(3) .dot:nth-child(10) { transform: rotateZ(270deg) translateY(-34px) translateZ(-100px); } | |
| .dots:nth-child(3) .dot:nth-child(11) { transform: rotateZ(300deg) translateY(-34px); } | |
| .dots:nth-child(3) .dot:nth-child(12) { transform: rotateZ(330deg) translateY(-34px) translateZ(-100px); } | |
| .dots:nth-child(3) .dot { background-color: #4d86a0; } | |
| .dots:nth-child(4) .dot:nth-child(1) { transform: rotateZ(0) translateY(-46px); } | |
| .dots:nth-child(4) .dot:nth-child(2) { transform: rotateZ(20deg) translateY(-46px) translateZ(-80px); } | |
| .dots:nth-child(4) .dot:nth-child(3) { transform: rotateZ(40deg) translateY(-46px); } | |
| .dots:nth-child(4) .dot:nth-child(4) { transform: rotateZ(60deg) translateY(-46px) translateZ(-80px); } | |
| .dots:nth-child(4) .dot:nth-child(5) { transform: rotateZ(80deg) translateY(-46px); } | |
| .dots:nth-child(4) .dot:nth-child(6) { transform: rotateZ(100deg) translateY(-46px) translateZ(-80px); } | |
| .dots:nth-child(4) .dot:nth-child(7) { transform: rotateZ(120deg) translateY(-46px); } | |
| .dots:nth-child(4) .dot:nth-child(8) { transform: rotateZ(140deg) translateY(-46px) translateZ(-80px); } | |
| .dots:nth-child(4) .dot:nth-child(9) { transform: rotateZ(160deg) translateY(-46px); } | |
| .dots:nth-child(4) .dot:nth-child(10) { transform: rotateZ(180deg) translateY(-46px) translateZ(-80px); } | |
| .dots:nth-child(4) .dot:nth-child(11) { transform: rotateZ(200deg) translateY(-46px); } | |
| .dots:nth-child(4) .dot:nth-child(12) { transform: rotateZ(220deg) translateY(-46px) translateZ(-80px); } | |
| .dots:nth-child(4) .dot:nth-child(13) { transform: rotateZ(240deg) translateY(-46px); } | |
| .dots:nth-child(4) .dot:nth-child(14) { transform: rotateZ(260deg) translateY(-46px) translateZ(-80px); } | |
| .dots:nth-child(4) .dot:nth-child(15) { transform: rotateZ(280deg) translateY(-46px); } | |
| .dots:nth-child(4) .dot:nth-child(16) { transform: rotateZ(300deg) translateY(-46px) translateZ(-80px); } | |
| .dots:nth-child(4) .dot:nth-child(17) { transform: rotateZ(320deg) translateY(-46px); } | |
| .dots:nth-child(4) .dot:nth-child(18) { transform: rotateZ(340deg) translateY(-46px) translateZ(-80px); } | |
| .dots:nth-child(2) .dot { background-color: #5ea0ba; } | |
| .dots:nth-child(5) .dot:nth-child(1) { transform: rotateZ(0) translateY(-58px); } | |
| .dots:nth-child(5) .dot:nth-child(2) { transform: rotateZ(15deg) translateY(-58px) translateZ(-40px); } | |
| .dots:nth-child(5) .dot:nth-child(3) { transform: rotateZ(30deg) translateY(-58px); } | |
| .dots:nth-child(5) .dot:nth-child(4) { transform: rotateZ(45deg) translateY(-58px) translateZ(-40px); } | |
| .dots:nth-child(5) .dot:nth-child(5) { transform: rotateZ(60deg) translateY(-58px); } | |
| .dots:nth-child(5) .dot:nth-child(6) { transform: rotateZ(75deg) translateY(-58px) translateZ(-40px); } | |
| .dots:nth-child(5) .dot:nth-child(7) { transform: rotateZ(90deg) translateY(-58px); } | |
| .dots:nth-child(5) .dot:nth-child(8) { transform: rotateZ(105deg) translateY(-58px) translateZ(-40px); } | |
| .dots:nth-child(5) .dot:nth-child(9) { transform: rotateZ(120deg) translateY(-58px); } | |
| .dots:nth-child(5) .dot:nth-child(10) { transform: rotateZ(135deg) translateY(-58px) translateZ(-40px); } | |
| .dots:nth-child(5) .dot:nth-child(11) { transform: rotateZ(150deg) translateY(-58px); } | |
| .dots:nth-child(5) .dot:nth-child(12) { transform: rotateZ(165deg) translateY(-58px) translateZ(-40px); } | |
| .dots:nth-child(5) .dot:nth-child(13) { transform: rotateZ(180deg) translateY(-58px); } | |
| .dots:nth-child(5) .dot:nth-child(14) { transform: rotateZ(195deg) translateY(-58px) translateZ(-40px); } | |
| .dots:nth-child(5) .dot:nth-child(15) { transform: rotateZ(210deg) translateY(-58px); } | |
| .dots:nth-child(5) .dot:nth-child(16) { transform: rotateZ(225deg) translateY(-58px) translateZ(-40px); } | |
| .dots:nth-child(5) .dot:nth-child(17) { transform: rotateZ(240deg) translateY(-58px); } | |
| .dots:nth-child(5) .dot:nth-child(18) { transform: rotateZ(255deg) translateY(-58px) translateZ(-40px); } | |
| .dots:nth-child(5) .dot:nth-child(19) { transform: rotateZ(270deg) translateY(-58px); } | |
| .dots:nth-child(5) .dot:nth-child(20) { transform: rotateZ(285deg) translateY(-58px) translateZ(-40px); } | |
| .dots:nth-child(5) .dot:nth-child(21) { transform: rotateZ(300deg) translateY(-58px); } | |
| .dots:nth-child(5) .dot:nth-child(22) { transform: rotateZ(315deg) translateY(-58px) translateZ(-40px); } | |
| .dots:nth-child(5) .dot:nth-child(23) { transform: rotateZ(330deg) translateY(-58px); } | |
| .dots:nth-child(5) .dot:nth-child(24) { transform: rotateZ(345deg) translateY(-58px) translateZ(-40px); } | |
| .dots:nth-child(1) .dot { background-color: #6bb1cd; } | |
| .dots:nth-child(6) .dot:nth-child(1) { transform: rotateZ(0deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(2) { transform: rotateZ(10deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(3) { transform: rotateZ(20deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(4) { transform: rotateZ(30deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(5) { transform: rotateZ(40deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(6) { transform: rotateZ(50deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(7) { transform: rotateZ(60deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(8) { transform: rotateZ(70deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(9) { transform: rotateZ(80deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(10) { transform: rotateZ(90deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(11) { transform: rotateZ(100deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(12) { transform: rotateZ(110deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(13) { transform: rotateZ(120deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(14) { transform: rotateZ(130deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(15) { transform: rotateZ(140deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(16) { transform: rotateZ(150deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(17) { transform: rotateZ(160deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(18) { transform: rotateZ(170deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(19) { transform: rotateZ(180deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(20) { transform: rotateZ(190deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(21) { transform: rotateZ(200deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(22) { transform: rotateZ(210deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(23) { transform: rotateZ(220deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(24) { transform: rotateZ(230deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(25) { transform: rotateZ(240deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(26) { transform: rotateZ(250deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(27) { transform: rotateZ(260deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(28) { transform: rotateZ(270deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(29) { transform: rotateZ(280deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(30) { transform: rotateZ(290deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(31) { transform: rotateZ(300deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(32) { transform: rotateZ(310deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(33) { transform: rotateZ(320deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(34) { transform: rotateZ(330deg) translateY(-70px) translateZ(-20px); } | |
| .dots:nth-child(6) .dot:nth-child(35) { transform: rotateZ(340deg) translateY(-70px); } | |
| .dots:nth-child(6) .dot:nth-child(36) { transform: rotateZ(350deg) translateY(-70px) translateZ(-20px); } |