Разноцветные ленточки в углах страницы с помощью CSS3

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


HTML

Для формирования ленточек, используем блочный элемент div и определим классы для дальнейшей работы со стилями в CSS. Классы corner-ribbon и sticky будут общими для всех лент, цвет и позиционирование, будут определяться отдельными классами. В наборе правил 4 варианта расположения лент, по разным углам страницы и 10 вариантов цветовой заливки.

Приведу пример расположения ленточек сразу во всех углах веб-страницы:

		 
<div class="corner-ribbon top-left sticky red shadow">Ваш Текст!</div> 
<div class="corner-ribbon top-right sticky blue">Ваш Текст!</div>
<div class="corner-ribbon bottom-left sticky orange">Ваш Текст!</div> 
<div class="corner-ribbon bottom-right sticky green shadow">Ваш Текст!</div>
	

CSS

Прямо в коде css, прописал комментарии к селекторам, так сказать, для лучшего понимания, что куда и зачем. Подробно остановлюсь лишь на некоторых моментах. Класс corner-ribbon общий для всех лент, в нём формируем макет, определяем абсолютное позиционирование, параметры шрифта и задаём значения трансформации под определённым углом( в примере это 45°). В классе sticky, который присутствует в каждой ленте, мы определим фиксированное позиционирование (приклеем) position: fixed;, а сторону к которой прилепим наши ленточки определяем в отдельных классах: top-left для верхнего левого угла, top-right для правого угла сверху, bottom-left и bottom-right для нижних углов соответственно. Остаётся дело за малым, разукрасить ленточки в разные цвета. Здесь всё зависит от вашей фантазии, выбор цвета заливки и стиль ни чем не ограничен, в примере же я прописал 10 самых распространённых оттенков для фона лент, каждому цвету соответствует свой класс, white, black, grey и так далее...

			
/* общие стили для лент */
.corner-ribbon{
  width: 200px;
  background: #e43;
  position: absolute;
  top: 25px;
  left: -50px;
  text-align: center;
  line-height: 50px;
  letter-spacing: 1px;
  color: #f0f0f0;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
/* фиксируем ленточки */
.corner-ribbon.sticky{
  position: fixed; 
}
/* легкая тень */
.corner-ribbon.shadow{
  box-shadow: 0 0 3px rgba(0,0,0,.3);
}
/* позиции лент */
.corner-ribbon.top-left{ /* верхний угол слева */
  top: 25px;
  left: -50px;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
.corner-ribbon.top-right{ /* верхний угол справа */
  top: 25px;
  right: -50px;
  left: auto;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}
.corner-ribbon.bottom-left{ /* нижний угол слева */
  top: auto;
  bottom: 25px;
  left: -50px;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}
.corner-ribbon.bottom-right{ /* нижний угол справа */
  top: auto;
  right: -50px;
  bottom: 25px;
  left: auto;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
/* выбор цвета лент */
.corner-ribbon.white{background: #f0f0f0; color: #555;}
.corner-ribbon.black{background: #333;}
.corner-ribbon.grey{background: #999;}
.corner-ribbon.blue{background: #39d;}
.corner-ribbon.green{background: #2c7;}
.corner-ribbon.turquoise{background: #1b9;}
.corner-ribbon.purple{background: #95b;}
.corner-ribbon.red{background: #e43;}
.corner-ribbon.orange{background: #e82;}
.corner-ribbon.yellow{background: #ec0;}
		


Возврат к списку