7 610 Скрипты / Buttons

Оформление тегов на CSS3

Теги используются обычно под контентом для его категоризации. Сегодня мы красиво оформим теги используя только CSS3 и HTML.

HTML

 

Как видим, для создания треугольника на css используется border, но градиенты при этом работать не будут. И идея состояла в использовании box-shadow, чтобы создать своего рода псевдо-градиент, который позволит реализовать иллюзию глубины.

<a href="#" class="tag">
    Текст
</a>

CSS

Мы использовали псевдо свойства before и after, чтобы получить стрелку и маленький кружок.


Но в итоге нам пришлось отказаться от идеи использования box-shadow, так как стрелка у нас имела абсолютное позиционирование и располагалась немного правее основного box (тега). То есть любая тень окружила бы текст, кружок, но не стрелку. Применение же тени к border - стрелке, так же не привело бы к желаемому результату.

Пример 2

HTML

<a href="https://pcvector.net" class="tag">
    <span class="arrow"></span>
    Текст
</a>

CSS

Во втором примере, который является развитием предыдущего мы использовали различные методы. Мы добавили отступ padding около текста, и вместо того, чтобы создать стрелку, мы создали её инверсию (см. рисунок ниже). Поместили стрелку около .tag и установили свойство pointer-events: none; - чтобы мы не могли кликать вне .tag.

 

Единственная проблема этого примера в том, что нужно добавить тег SPAN к анкору и для стрелки должны быть установлены в ручную цвета фона и вдобавок эта инвертированная стрелка блокирует тень. Но в целом нас это устроило, и мы даже добавили эффект скольжения - transition.


Есть также и дополнительное преимущество. Мы можем легко изменить цвет фона просто добавляя другой класс CSS: class="tag orange"
.orange {
    background-color: #e45c21;
}

Скачать 785Загрузок 1,48 Kb
Демо

Комментарии

  • Facebook
  • Вконтакте

Похожие статьи