.dmxCloak { display: none; } .dmxPreloader { --color: #333; --bgcolor: #fff; position: fixed; top: 0; left: 0; bottom: 0; right: 0; z-index: 1050; background-color: #fff; background-color: var(--bgcolor); -webkit-transition: all 0.5s linear; -moz-transition: all 0.5s linear; -o-transition: all 0.5s linear; -ms-transition: all 0.5s linear; transition: all 0.5s linear; } .dmxPreloader-spinner { position: absolute; top: 50%; left: 50%; margin-top: -20px; margin-left: -20px; width: 40px; height: 40px; margin-top: calc(var(--size) / 2 * -1); margin-left: calc(var(--size) / 2 * -1); width: var(--size); height: var(--size); } /* rotatingPlane */ .dmxPreloader-rotatingPlane { background-color: #333; background-color: var(--color); animation: rotatePlane 1.2s infinite ease-in-out; } @keyframes rotatePlane { 0% { transform: perspective(200px) rotateX(0deg) rotateY(0deg); } 50% { transform: perspective(200px) rotateX(-180.1deg) rotateY(0deg); } 100% { transform: perspective(200px) rotateX(-180deg) rotateY(-179.9deg); } } /* doubleBounce */ .dmxPreloader-doubleBounce > div { width: 100%; height: 100%; border-radius: 50%; background-color: #333; background-color: var(--color); opacity: 0.6; position: absolute; top: 0; left: 0; animation: doubleBounce 2s infinite ease-in-out; } .dmxPreloader-doubleBounce > div:nth-child(2) { animation-delay: -1s; } @keyframes doubleBounce { 0%, 100% { transform: scale(0); } 50% { transform: scale(1); } } /* wave */ .dmxPreloader-wave > div { background-color: #333; background-color: var(--color); height: 100%; width: 6px; width: calc((var(--size) / 5) - 6%); margin: 0 3%; display: inline-block; animation: waveStretchDelay 1.2s infinite ease-in-out; } .dmxPreloader-wave > div:nth-child(2) { animation-delay: -.2s; } .dmxPreloader-wave > div:nth-child(3) { animation-delay: -.4s; } .dmxPreloader-wave > div:nth-child(4) { animation-delay: -.6s; } .dmxPreloader-wave > div:nth-child(5) { animation-delay: -.8s; } @keyframes waveStretchDelay { 0%, 40%, 100% { transform: scaleY(0.4); } 20% { transform: scaleY(1); } } /* wanderingCubes */ .dmxPreloader-wanderingCubes > div { background-color: #333; background-color: var(--color); width: 15px; height: 15px; width: calc(var(--size) / 3); height: calc(var(--size) / 3); position: absolute; top: 0; left: 0; animation: wanderingCube 1.8s infinite ease-in-out; } .dmxPreloader-wanderingCubes > div:nth-child(2) { animation-delay: -0.9s; } @keyframes wanderingCube { 0% { transform: rotate(0deg); } 25% { transform: translateX(25px) rotate(-90deg) scale(0.5); transform: translateX(calc(var(--size) / 3 * 2)) rotate(-90deg) scale(0.5); } 50% { transform: translateX(25px) translateY(25px) rotate(-179deg); transform: translateX(calc(var(--size) / 3 * 2)) translateY(calc(var(--size) / 3 * 2)) rotate(-179deg); } 50.1% { transform: translateX(25px) translateY(25px) rotate(-180deg); transform: translateX(calc(var(--size) / 3 * 2)) translateY(calc(var(--size) / 3 * 2)) rotate(-180deg); } 75% { transform: translateX(0) translateY(25px) rotate(-270deg) scale(0.5); transform: translateX(0) translateY(calc(var(--size) / 3 * 2)) rotate(-270deg) scale(0.5); } 100% { transform: rotate(-360deg); } } /* pulse */ .dmxPreloader-pulse { background-color: #333; background-color: var(--color); border-radius: 50%; animation: pulseScaleOut 1.0s infinite ease-in-out; } @keyframes pulseScaleOut { 0% { transform: scale(0); } 100% { transform: scale(1); opacity: 0; } } /* chasingDots */ .dmxPreloader-chasingDots { animation: chasingDotsRotate 2s infinite linear; } .dmxPreloader-chasingDots > div { width: 60%; height: 60%; position: absolute; top: 0; left: 40%; background-color: #333; background-color: var(--color); border-radius: 50%; animation: chasingDotsBounce 2s infinite ease-in-out; } .dmxPreloader-chasingDots > div:nth-child(2) { top: auto; bottom: 0; animation-delay: -1s; } @keyframes chasingDotsRotate { 100% { transform: rotate(360deg); } } @keyframes chasingDotsBounce { 0%, 100% { transform: scale(0); } 50% { transform: scale(1); } } /* threeBounce */ .dmxPreloader-threeBounce > div { background-color: #333; background-color: var(--color); width: 25%; height: 25%; margin: 37.5% 4%; border-radius: 50%; display: inline-block; animation: threeBounce 1.4s infinite ease-in-out both; } .dmxPreloader-threeBounce > div:nth-child(1) { animation-delay: -0.32s; } .dmxPreloader-threeBounce > div:nth-child(2) { animation-delay: -0.16s; } @keyframes threeBounce { 0%, 80%, 100% { transform: scale(0); } 40% { transform: scale(1); } } /* circle */ .dmxPreloader-circle > div { width: 100%; height: 100%; position: absolute; left: 0; top: 0; } .dmxPreloader-circle > div:before { content: ''; display: block; margin: 0 auto; width: 15%; height: 15%; background-color: #333; background-color: var(--color); border-radius: 50%; animation: circleBounceDelay 1.2s infinite ease-in-out both; } .dmxPreloader-circle > div:nth-child(2) { transform: rotate(30deg); } .dmxPreloader-circle > div:nth-child(2):before { animation-delay: -1.1s; } .dmxPreloader-circle > div:nth-child(3) { transform: rotate(60deg); } .dmxPreloader-circle > div:nth-child(3):before { animation-delay: -1.0s; } .dmxPreloader-circle > div:nth-child(4) { transform: rotate(90deg); } .dmxPreloader-circle > div:nth-child(4):before { animation-delay: -0.9s; } .dmxPreloader-circle > div:nth-child(5) { transform: rotate(120deg); } .dmxPreloader-circle > div:nth-child(5):before { animation-delay: -0.8s; } .dmxPreloader-circle > div:nth-child(6) { transform: rotate(150deg); } .dmxPreloader-circle > div:nth-child(6):before { animation-delay: -0.7s; } .dmxPreloader-circle > div:nth-child(7) { transform: rotate(180deg); } .dmxPreloader-circle > div:nth-child(7):before { animation-delay: -0.6s; } .dmxPreloader-circle > div:nth-child(8) { transform: rotate(210deg); } .dmxPreloader-circle > div:nth-child(8):before { animation-delay: -0.5s; } .dmxPreloader-circle > div:nth-child(9) { transform: rotate(240deg); } .dmxPreloader-circle > div:nth-child(9):before { animation-delay: -0.4s; } .dmxPreloader-circle > div:nth-child(10) { transform: rotate(270deg); } .dmxPreloader-circle > div:nth-child(10):before { animation-delay: -0.3s; } .dmxPreloader-circle > div:nth-child(11) { transform: rotate(300deg); } .dmxPreloader-circle > div:nth-child(11):before { animation-delay: -0.2s; } .dmxPreloader-circle > div:nth-child(12) { transform: rotate(330deg); } .dmxPreloader-circle > div:nth-child(12):before { animation-delay: -0.1s; } @keyframes circleBounceDelay { 0%, 80%, 100% { transform: scale(0); } 40% { transform: scale(1); } } /* cubeGrid */ .dmxPreloader-cubeGrid > div { width: 33.33%; height: 33.33%; width: calc(var(--size) / 3); height: calc(var(--size) / 3); background-color: #333; background-color: var(--color); float: left; animation: cubeGridScaleDelay 1.3s infinite ease-in-out; } .dmxPreloader-cubeGrid > div:nth-child(1) { animation-delay: 0.2s; } .dmxPreloader-cubeGrid > div:nth-child(2) { animation-delay: 0.3s; } .dmxPreloader-cubeGrid > div:nth-child(3) { animation-delay: 0.4s; } .dmxPreloader-cubeGrid > div:nth-child(4) { animation-delay: 0.1s; } .dmxPreloader-cubeGrid > div:nth-child(5) { animation-delay: 0.2s; } .dmxPreloader-cubeGrid > div:nth-child(6) { animation-delay: 0.3s; } .dmxPreloader-cubeGrid > div:nth-child(7) { animation-delay: 0s; } .dmxPreloader-cubeGrid > div:nth-child(8) { animation-delay: 0.1s; } .dmxPreloader-cubeGrid > div:nth-child(9) { animation-delay: 0.2s; } @keyframes cubeGridScaleDelay { 0%, 70%, 100% { transform: scale3d(1, 1, 1); } 35% { transform: scale3d(0, 0, 1); } } /* fadingCircle */ .dmxPreloader-fadingCircle > div { width: 100%; height: 100%; position: absolute; left: 0; top: 0; } .dmxPreloader-fadingCircle > div:before { content: ''; display: block; margin: 0 auto; width: 15%; height: 15%; background-color: #333; background-color: var(--color); border-radius: 50%; animation: circleFadeDelay 1.2s infinite ease-in-out both; } .dmxPreloader-fadingCircle > div:nth-child(2) { transform: rotate(30deg); } .dmxPreloader-fadingCircle > div:nth-child(2):before { animation-delay: -1.1s; } .dmxPreloader-fadingCircle > div:nth-child(3) { transform: rotate(60deg); } .dmxPreloader-fadingCircle > div:nth-child(3):before { animation-delay: -1.0s; } .dmxPreloader-fadingCircle > div:nth-child(4) { transform: rotate(90deg); } .dmxPreloader-fadingCircle > div:nth-child(4):before { animation-delay: -0.9s; } .dmxPreloader-fadingCircle > div:nth-child(5) { transform: rotate(120deg); } .dmxPreloader-fadingCircle > div:nth-child(5):before { animation-delay: -0.8s; } .dmxPreloader-fadingCircle > div:nth-child(6) { transform: rotate(150deg); } .dmxPreloader-fadingCircle > div:nth-child(6):before { animation-delay: -0.7s; } .dmxPreloader-fadingCircle > div:nth-child(7) { transform: rotate(180deg); } .dmxPreloader-fadingCircle > div:nth-child(7):before { animation-delay: -0.6s; } .dmxPreloader-fadingCircle > div:nth-child(8) { transform: rotate(210deg); } .dmxPreloader-fadingCircle > div:nth-child(8):before { animation-delay: -0.5s; } .dmxPreloader-fadingCircle > div:nth-child(9) { transform: rotate(240deg); } .dmxPreloader-fadingCircle > div:nth-child(9):before { animation-delay: -0.4s; } .dmxPreloader-fadingCircle > div:nth-child(10) { transform: rotate(270deg); } .dmxPreloader-fadingCircle > div:nth-child(10):before { animation-delay: -0.3s; } .dmxPreloader-fadingCircle > div:nth-child(11) { transform: rotate(300deg); } .dmxPreloader-fadingCircle > div:nth-child(11):before { animation-delay: -0.2s; } .dmxPreloader-fadingCircle > div:nth-child(12) { transform: rotate(330deg); } .dmxPreloader-fadingCircle > div:nth-child(12):before { animation-delay: -0.1s; } @keyframes circleFadeDelay { 0%, 39%, 100% { opacity: 0; } 40% { opacity: 1; } } /* foldingCube */ .dmxPreloader-foldingCube { transform: rotateZ(45deg); } .dmxPreloader-foldingCube > div { float: left; width: 50%; height: 50%; position: relative; transform: scale(1.1); } .dmxPreloader-foldingCube > div:before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #333; background-color: var(--color); animation: foldCubeAngle 2.4s infinite linear both; transform-origin: 100% 100%; } .dmxPreloader-foldingCube > div:nth-child(2) { transform: scale(1.1) rotateZ(90deg); } .dmxPreloader-foldingCube > div:nth-child(3) { transform: scale(1.1) rotateZ(270deg); } .dmxPreloader-foldingCube > div:nth-child(4) { transform: scale(1.1) rotateZ(180deg); } .dmxPreloader-foldingCube > div:nth-child(2):before { animation-delay: 0.3s; } .dmxPreloader-foldingCube > div:nth-child(3):before { animation-delay: 0.9s; } .dmxPreloader-foldingCube > div:nth-child(4):before { animation-delay: 0.6s; } @keyframes foldCubeAngle { 0%, 10% { transform: perspective(140px) rotateX(-180deg); opacity: 0; } 25%, 75% { transform: perspective(140px) rotateX(0deg); opacity: 1; } 90%, 100% { transform: perspective(140px) rotateY(180deg); opacity: 0; } }