Домашняя » кодирование » Как создать ленту CSS

    Как создать ленту CSS

    Мы говорим о Ленты CSS в веб-дизайне, когда полоса коробки (называется лента) оборачивает другую коробку. Это довольно используемая методика украсить текст, особенно заголовки. На сайте W3C вы можете проверить, насколько правильно могут использоваться CSS-ленты. содержание структуры тонким способом.

    Итак, в этом посте мы увидим как создать простую ленту CSS что вы можете использовать для улучшить заголовки на вашем сайте. Благодаря CSS трансформации, мы можем создать этот дизайн с гораздо более простой базой кода, чем раньше.

    Вы можете взглянуть на финальную демонстрацию ниже.

    HTML и основные стили

    Во-первых, мы создаем

    HTML-элемент, к которому мы будем позже добавить дизайн ленты. Мы помещаем это внутрь
    пометить мы помечаем .карта селектор, который представляет прямоугольник, лента будет заворачивать вокруг.

     

    Мы также установили основные размеры и фоновый цвет с CSS.

     .карточка цвет фона: бежевый; высота: 300 пикселей; поле: 40px; ширина: 500 пикселей;  

    Средняя часть ленты

    Мы будем использовать Переменная CSS (позволяет нам хранить и повторно использовать значение CSS) --п в сохранить значение отступа. Значение набивка свойство использует вар (- р) синтаксис для левого и правого отступов ленты, так что это может быть легко расширяется. --п переменная позже будет повторное использование несколько раз; это делает наш код гибким.

     .лента --p: 15 пикселей; цвет фона: RGB (170 170 170); высота: 60 ​​пикселей; отступ: 0 вар (- р); ширина: 100%;  

    На скриншоте ниже вы можете увидеть, как ваша демоверсия должна выглядеть на данный момент:

    Центрирование ленты

    Нам также нужно центрировать ленту. Мы толкнуть влево на размер отступа (отмечено --п переменная) с использованием относительного позиционирования.

     .лента --p: 15 пикселей; цвет фона: RGB (170 170 170); высота: 60 ​​пикселей; отступ: 0 вар (- р); положение: относительное; справа: var (- p); ширина: 100%;  

    Обновленная демка:

    Стороны ленты

    Теперь мы создаем левая и правая стороны ленты это, казалось бы, должно огибать край карты. Для этого мы используем оба :до а также :после псевдоэлементы .лента.

    Оба псевдоэлемента наследуют цвет фона .лента, и мы используем фильтр: яркость (.5) Правило немного затемнять их цвет. Они также абсолютно позиционируется в пределах своего (относительно расположенного) родителя.

    Их ширина должна быть такой же, как размер отступа, и мы размещаем их на левый и правый концы ленты с использованием осталось: 0 а также справа: 0 правила стиля.

     .лента: до, .риббон: после фоновый цвет: наследовать; content: "; display: block; filter: яркость (.5); высота: 100%; позиция: абсолютная; ширина: var (- p); .ribbon: before left: 0; .ribbon: after  справа: 0; 

    Теперь лента с добавленными сторонами выглядит так:

    Наклонить стороны

    Чтобы сделать стороны ленты выглядеть согнутым, мы должны перекосить стороны на 45 °. transform: skewy () Правило CSS наклоняет элементы по вертикали.

     .лента: перед слева: 0; преобразование: skewy (45deg);  .ribbon: после справа: 0; преобразование: skewy (-45deg);  

    Как вы можете видеть края сторон не выравнивать после преобразования, поэтому нам нужно потяните их вниз.

    Выровняйте стороны

    к определить правильную длину с помощью которого нам нужно переместить стороны вниз, мы переходим к тригонометрии. Что нам нужно найти, так это Икс, как Y ширина сторон (равна размеру отступа .лента) и угол θ 45 ° (угол перекоса).

    Результирующий Икс затем нужно вдвое, так как есть левая и правая сторона, а также.

    Если вы используете какой-либо препроцессор CSS, проверьте, имеет ли он загар функция, в противном случае обратитесь к касательной диаграмме или калькулятору узнать значение тангенса угла. Нам повезло как загар 45 ° является 1, Это означает, что значение Икс равно Y в нашем случае.

     .лента: до, .риббон: после фоновый цвет: наследовать; content: "; display: block; filter: яркость (.5); высота: 100%; позиция: абсолютная; top: calc (var (- p) / 2); ширина: var (- p); 

    поскольку Икс пришлось вдвое, мы используем Вычислено () Функция CSS для выполнения деления --п переменная.

    Наконец нам нужно выровнять стороны вдоль оси Z так что давайте добавим z-индекс: -1 править в стороны, чтобы разместите их за средней частью ленты.

     .лента: до, .риббон: после фоновый цвет: наследовать; содержимое: "; дисплей: блок; фильтр: яркость (.5); высота: 100%; положение: абсолютное; верх: calc (var (- p) / 2); ширина: var (- p); z- индекс: -1; 

    Теперь, когда мы выровняли стороны, наша CSS-лента готова.

    Ниже вы можете снова посмотреть живую демоверсию, обратите внимание, что она также использует некоторые дополнительные стили.