Предлагаю на рассмотрение, готовый набор правил CSS, для создания и последующего размещения в разных углах страницы, разноцветных ленточек, сформированных исключительно средствами CSS3, без использования дополнительных файлов изображений. Для чего вообще нужны эти ленточки? Прежде всего, для акцентирования внимания пользователей на какой-либо важной информации, предельно сжатой и лаконичной.
Для формирования ленточек, используем блочный элемент 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, прописал комментарии к селекторам, так сказать, для лучшего понимания, что куда и зачем. Подробно остановлюсь лишь на некоторых моментах. Класс 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;}