Поиск
Подписаться
Разное

Валидный XHTML 1.0 Transitional

Валидный RSS

Индикаторы загрузки на CSS Категория: CSS
Название: Индикаторы загрузки на CSS
Дата добавления: 15-07-2012
Раз просмотрено: 1311
Комментарии: 0
Рейтинг: · · · · · · · · · · (0 голосов)

Индикаторы загрузки на CSS

В этом новом уроке вы научитесь создавать индикаторы загрузки с помощью чистого CSS3, без применения каких-либо изображений. Это будет полезным для уменьшения количества лишних изображений в вашем проекте, а сами индикаторы загрузки удержат посетителя, даже если ваш сайт загружается довольно долго. В этом уроке вы найдете три индикатора загрузки на CSS.

Примеры со всеми тремя индикаторами загрузки вы можете увидеть на этой странице. А выглядят они так:

Индикаторы загрузки на CSS

HTML

HTML разметка индикаторов загрузки предельно проста — это блоки с классами load_star, load_dots и load_stripes для каждого типа индикаторов. В них находятся другие контейнеры, в первых двух типах их восемь, а в последнем — пять:

Первый индикатор загрузки

<div class="loading_star">
  <div></div>
  <div></div>
  <div></div>
  <div></div>
  <div></div>
  <div></div>
  <div></div>
  <div></div>
</div>

Второй индикатор загрузки

<div class="loading_dots">
  <div></div>
  <div></div>
  <div></div>
  <div></div>
  <div></div>
  <div></div>
  <div></div>
  <div></div>
</div>

Третий индикатор загрузки

<div class="loading_stripes">
  <div></div>
  <div></div>
  <div></div>
  <div></div>
  <div></div>
</div>

CSS

Ниже вы найдете стили для этих индикаторов загрузки на CSS. Естественно, нет нужды использовать на сайте все три типа, поэтому выберете тот, который по-вашему мнению больше впишется в дизайн сайта и используйте его.

Первый индикатор загрузки

.loading_star {
	height: 100px;
	position: relative;
	width: 80px;
}

.loading_star > div {
	background-color: #FFF;
	height: 30px;
	position: absolute;
	width: 12px;

	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;

	-webkit-transform: scale(0.4);
	-moz-transform: scale(0.4);
	-o-transform: scale(0.4);

	-webkit-animation: loading_star 1.04s infinite linear;
	-moz-animation: loading_star 1.04s infinite linear;
	-o-animation: loading_star 1.04s infinite linear;
}

.loading_star > div:nth-child(1) {
	left: 0;
	top: 36px;

	-webkit-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
	-o-transform: rotate(-90deg);

	-webkit-animation-delay: 0.39s;
	-moz-animation-delay: 0.39s;
	-o-animation-delay: 0.39s;
}
.loading_star > div:nth-child(2) {
	left: 10px;
	top: 13px;

	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);

	-webkit-animation-delay: 0.52s;
	-moz-animation-delay: 0.52s;
	-o-animation-delay: 0.52s;
}
.loading_star > div:nth-child(3) {
	left: 34px;
	top: 4px;

	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);

	-webkit-animation-delay: 0.65s;
	-moz-animation-delay: 0.65s;
	-o-animation-delay: 0.65s;
}
.loading_star > div:nth-child(4) {
	right: 10px;
	top: 13px;

	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);

	-webkit-animation-delay: 0.78s;
	-moz-animation-delay: 0.78s;
	-o-animation-delay:0.78s;
}
.loading_star > div:nth-child(5) {
	right: 0;
	top: 36px;

	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-o-transform: rotate(90deg);

	-webkit-animation-delay: 0.91s;
	-moz-animation-delay: 0.91s;
	-o-animation-delay: 0.91s;
}
.loading_star > div:nth-child(6) {
	right: 10px;
	bottom: 9px;

	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-o-transform: rotate(135deg);

	-webkit-animation-delay: 1.04s;
	-moz-animation-delay: 1.04s;
	-o-animation-delay: 1.04s;
}
.loading_star > div:nth-child(7) {
	bottom: 0;
	left: 34px;

	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-o-transform: rotate(180deg);

	-webkit-animation-delay: 1.17s;
	-moz-animation-delay: 1.17s;
	-o-animation-delay: 1.17s;
}
.loading_star > div:nth-child(8) {
	left: 10px;
	bottom: 9px;

	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	-o-transform:  rotate(-135deg);

	-webkit-animation-delay: 1.3s;
	-moz-animation-delay: 1.3s;
	-o-animation-delay: 1.3s;
}

@-webkit-keyframes loading_star {
	0% {background-color: #000}
	100% {background-color: #FFF}
}
@-moz-keyframes loading_star {
	0% {background-color: #000}
	100% {background-color: #FFF}
}
@-o-keyframes loading_star {
	0% {background-color: #000}
	100% {background-color: #FFF}
}

Второй индикатор загрузки

.loading_dots {
	height: 140px;
	position: relative;
	width: 140px;

	-webkit-transform: scale(0.6);
	-moz-transform: scale(0.6);
	-o-transform: scale(0.6);
}

.loading_dots > div {
	background-color: #FFF;
	height: 25px;
	position: absolute;
	width: 25px;

	-moz-border-radius: 15px;
	-webkit-border-radius: 15px;
	border-radius: 15px;


	-webkit-animation: loading_dots 1.04s infinite linear;
	-moz-animation: loading_dots 1.04s infinite linear;
	-o-animation: loading_dots 1.04s infinite linear;
}

.loading_dots > div:nth-child(1) {
	left: 0;
	top: 57px;

	-webkit-animation-delay: 0.39s;
	-moz-animation-delay: 0.39s;
	-o-animation-delay: 0.39s;
}
.loading_dots > div:nth-child(2) {
	left: 17px;
	top: 17px;

	-webkit-animation-delay: 0.52s;
	-moz-animation-delay: 0.52s;
	-o-animation-delay: 0.52s;
}
.loading_dots > div:nth-child(3) {
	left: 57px;
	top: 0;

	-webkit-animation-delay: 0.65s;
	-moz-animation-delay: 0.65s;
	-o-animation-delay: 0.65s;
}
.loading_dots > div:nth-child(4) {
	right: 17px;
	top: 17px;

	-webkit-animation-delay: 0.78s;
	-moz-animation-delay: 0.78s;
	-o-animation-delay:0.78s;
}
.loading_dots > div:nth-child(5) {
	right: 0;
	top: 57px;

	-webkit-animation-delay: 0.91s;
	-moz-animation-delay: 0.91s;
	-o-animation-delay: 0.91s;
}
.loading_dots > div:nth-child(6) {
	right: 17px;
	bottom: 17px;

	-webkit-animation-delay: 1.04s;
	-moz-animation-delay: 1.04s;
	-o-animation-delay: 1.04s;
}
.loading_dots > div:nth-child(7) {
	left: 57px;
	bottom: 0;

	-webkit-animation-delay: 1.17s;
	-moz-animation-delay: 1.17s;
	-o-animation-delay: 1.17s;
}
.loading_dots > div:nth-child(8) {
	left: 17px;
	bottom: 17px;

	-webkit-animation-delay: 1.3s;
	-moz-animation-delay: 1.3s;
	-o-animation-delay: 1.3s;
}

@-webkit-keyframes loading_dots {
	0% {background-color: #000}
	100% {background-color: #FFF}
}
@-moz-keyframes loading_dots {
	0% {background-color: #000}
	100% {background-color: #FFF}
}
@-o-keyframes loading_dots {
	0% {background-color: #000}
	100% {background-color: #FFF}
}

Третий индикатор загрузки

.loading_stripes {
	width: 185px;
}

.loading_stripes > div {
	background-color: #FFF;
	border: 1px solid #000;
	float: left;
	height: 114px;
	margin-left: 5px;
	width: 30px;
	opacity: 0.1;

	-webkit-transform: scale(0.8);
	-moz-transform: scale(0.8);
	-o-transform: scale(0.8);

	-webkit-animation: loading_stripes 1.2s infinite linear;
	-moz-animation: loading_stripes 1.2s infinite linear;
    -o-animation: loading_stripes 1.2s infinite linear;
}

.loading_stripes > div:nth-child(1) {
	-webkit-animation-delay: 0.24s;
	-moz-animation-delay: 0.24s;
	-o-animation-delay: 0.24s;
}
.loading_stripes > div:nth-child(2) {
	-webkit-animation-delay: 0.48s;
	-moz-animation-delay: 0.48s;
	-o-animation-delay: 0.48s;
}
.loading_stripes > div:nth-child(3) {
	-webkit-animation-delay: 0.72s;
	-moz-animation-delay: 0.72s;
	-o-animation-delay: 0.72s;
}
.loading_stripes > div:nth-child(4) {
	-webkit-animation-delay: 0.96s;
	-moz-animation-delay: 0.96s;
	-o-animation-delay: 0.96s;
}
.loading_stripes > div:nth-child(5) {
	-webkit-animation-delay: 1.2s;
	-moz-animation-delay: 1.2s;
	-o-animation-delay: 1.2s;
}

@-webkit-keyframes loading_stripes {
	0% {
		-webkit-transform: scale(1.2);
		opacity: 1;
	}
	100% {
		-webkit-transform: scale(0.7);
		opacity: 0.1;
	}
}
@-moz-keyframes loading_stripes {
	0% {
		-moz-transform: scale(1.2);
		opacity: 1;
	}
	100% {
		-moz-transform: scale(0.7);
		opacity: 0.1;
	}
}
@-o-keyframes loading_stripes {
	0% {
		-o-transform: scale(1.2);
		opacity: 1;
	}
	100% {
		-o-transform: scale(0.7);
		opacity: 0.1;
	}
}

Это интересно: «Каких ошибок следует избегать веб-дизайнеру».

Понравился материал? Расскажи о нем всем:
Оцените эту статью:
Прокомментируйте:
Ваше имя:

Ваш комментарий будет первым.