
Подробное описание и демонстрацией работы эффекта загрузки под номером №86 для бибилиотеки Bootstrap. Html и CSS код для реализации preloader’a сайта как на изображении.
Демонстрация эффекта загрузки страницы — стиль 86
<div class="container"> <div class="row"> <div class="col-md-12"> <div class="loader"> <span class="loader-inner box-1"></span> <span class="loader-inner box-2"></span> <span class="loader-inner box-3"></span> <span class="loader-inner box-4"></span> </div> </div> </div> </div>css разметка для реализации эффекта загрузки тсраницы
.demo{ background: #e63946; } .loader{ width: 200px; height: 180px; margin: 30px auto; position: relative; } .loader .loader-inner{ display: block; width: 30px; height: 30px; border-radius: 50%; background: #1d3557; position: absolute; top: 40%; left: 40%; } .loader .box-1{ animation-name: loading-1; animation-duration: 2s; animation-iteration-count: infinite; animation-fill-mode: both; animation-delay: 0s; } .loader .box-2{ animation-name: loading-2; animation-duration: 2s; animation-iteration-count: infinite; animation-fill-mode: both; animation-delay: 0s; } .loader .box-3{ animation-name: loading-3; animation-duration: 2s; animation-iteration-count: infinite; animation-fill-mode: both; animation-delay: 0s; } .loader .box-4{ animation-name: loading-4; animation-duration: 2s; animation-iteration-count: infinite; animation-fill-mode: both; animation-delay: 0s; } @-webkit-keyframes loading-1{ 0% { transform: rotate3d(0, 0, 1, 0deg) translate3d(0, 0, 0); } 20% { transform: rotate3d(0, 0, 1, 0deg) translate3d(150%, 150%, 0); } 80% { transform: rotate3d(0, 0, 1, 360deg) translate3d(150%, 150%, 0); } 100% { transform: rotate3d(0, 0, 1, 360deg) translate3d(0, 0, 0); } } @keyframes loading-1{ 0% { transform: rotate3d(0, 0, 1, 0deg) translate3d(0, 0, 0); } 20% { transform: rotate3d(0, 0, 1, 0deg) translate3d(150%, 150%, 0); } 80% { transform: rotate3d(0, 0, 1, 360deg) translate3d(150%, 150%, 0); } 100% { transform: rotate3d(0, 0, 1, 360deg) translate3d(0, 0, 0); } } @-webkit-keyframes loading-2{ 0% { transform: rotate3d(0, 0, 1, 0deg) translate3d(0, 0, 0); } 20% { transform: rotate3d(0, 0, 1, 0deg) translate3d(150%, -150%, 0); } 80% { transform: rotate3d(0, 0, 1, 360deg) translate3d(150%, -150%, 0); } 100% { transform: rotate3d(0, 0, 1, 360deg) translate3d(0, 0, 0); } } @keyframes loading-2{ 0% { transform: rotate3d(0, 0, 1, 0deg) translate3d(0, 0, 0); } 20% { transform: rotate3d(0, 0, 1, 0deg) translate3d(150%, -150%, 0); } 80% { transform: rotate3d(0, 0, 1, 360deg) translate3d(150%, -150%, 0); } 100% { transform: rotate3d(0, 0, 1, 360deg) translate3d(0, 0, 0); } } @-webkit-keyframes loading-3{ 0% { transform: rotate3d(0, 0, 1, 0deg) translate3d(0, 0, 0); } 20% { transform: rotate3d(0, 0, 1, 0deg) translate3d(-150%, -150%, 0); } 80% { transform: rotate3d(0, 0, 1, 360deg) translate3d(-150%, -150%, 0); } 100% { transform: rotate3d(0, 0, 1, 360deg) translate3d(0, 0, 0); } } @keyframes loading-3{ 0% { transform: rotate3d(0, 0, 1, 0deg) translate3d(0, 0, 0); } 20% { transform: rotate3d(0, 0, 1, 0deg) translate3d(-150%, -150%, 0); } 80% { transform: rotate3d(0, 0, 1, 360deg) translate3d(-150%, -150%, 0); } 100% { transform: rotate3d(0, 0, 1, 360deg) translate3d(0, 0, 0); } } @-webkit-keyframes loading-4{ 0% { transform: rotate3d(0, 0, 1, 0deg) translate3d(0, 0, 0); } 20% { transform: rotate3d(0, 0, 1, 0deg) translate3d(-150%, 150%, 0); } 80% { transform: rotate3d(0, 0, 1, 360deg) translate3d(-150%, 150%, 0); } 100% { transform: rotate3d(0, 0, 1, 360deg) translate3d(0, 0, 0); } } @keyframes loading-4{ 0% { transform: rotate3d(0, 0, 1, 0deg) translate3d(0, 0, 0); } 20% { transform: rotate3d(0, 0, 1, 0deg) translate3d(-150%, 150%, 0); } 80% { transform: rotate3d(0, 0, 1, 360deg) translate3d(-150%, 150%, 0); } 100% { transform: rotate3d(0, 0, 1, 360deg) translate3d(0, 0, 0); } }