
В данной статье рассмотрим создание анимации загрузки с помощью чистого CSS3.
HTML
Для начала создаем блок в котором будет показываться загрузка:
<div class="preloader"></div>
CSS
Теперь пропишем ему стили:
@-ms-keyframes spin {
from { -ms-transform: rotate(0deg); }
to { -ms-transform: rotate(360deg); }
}
@-moz-keyframes spin {
from { -moz-transform: rotate(0deg); }
to { -moz-transform: rotate(360deg); }
}
@-webkit-keyframes spin {
from { -webkit-transform: rotate(0deg); }
to { -webkit-transform: rotate(360deg); }
}
@keyframes spin {
from { transform:rotate(0deg); }
to { transform:rotate(360deg); }
}
.preloader {
width: 30px;
height: 30px;
border: 7px solid #000;
border-left-color: #333;
border-right-color: transparent;
border-bottom-color: #555;
border-radius: 100%;
-webkit-animation: spin 600ms infinite linear;
-moz-animation: spin 600ms infinite linear;
-ms-animation: spin 600ms infinite linear;
animation: spin 600ms infinite linear;
}
Мы сначала задали ширину и высоту блока, затем задали рамку шириной в 7px сплошным черным цветом. Далее левую и нижнюю рамку мы сделали разными цветами, а правую - прозрачной. Это делается для того чтобы эффект был более заметен. В конце мы скруглили края у блока и задали линейную анимацию, которая и вращает наш круг, делая эффект загрузки.
Чтобы использовать CSS3 анимацию, необходимо также определить ключевые кадры анимации, мы их описали в блоке @keyframes spin. Для поддержки всеми браузерами анимации мы использовали префиксы -webkit-, -ms-, -moz-.
На этом и все, наша анимация готова!
Спасибо за внимание, будут вопросы пишите в комментариях!
Frameworks.su Шпаргалка вебмастера