ZorNet.Ru — сайт для вебмастера » JavaScript и jQuery » Анимационный эффект кнопки на CSS + JS

Анимационный эффект кнопки на CSS + JS

Анимационный эффект кнопки на CSS + JS
Потрясающий анимационный эффект подсветки кнопки при наведении с использованием HTML CSS и Javascript, что отлично подойдет на темный дизайн сайта. В данном материале, а точнее за основу идет кнопка, хотя по сути мы ее не видим, но в данном эффекте задействован для создания анимации, которая появится при курсора, которая изначально настроена для нескольких фонов и границ, и все это при помощи CSS.

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

1. Этот вид мы наблюдаем по умолчанию;

Красивый эффект с наведении клика

2. Здесь как видим все изменилось, стоило навести клик на основу;

Стиль оригинальной анимации для кнопки для сайта

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

Приступаем к установке:

HTML

Код
<div class="mukaip_katsua">
  <button class="knopka_naveden">
  <span>HOVER</span>
  </button>
  </div>

CSS

Код
.mukaip_katsua{
  margin:10px auto;
  text-align: center;
}  
.knopka_naveden{
  position:relative;
  box-sizing: border-box;
  background:rgba(255,255,255,0);
  border:none;
  font-size: 1.5rem;
  color:turquoise;
  transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  overflow:hidden;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  width:200px;
  height:200px;
}  
.knopka_naveden:before{
  --size:0;
  content:'';
  position:absolute;
  left:var(--x);
  top:var(--y);
  width:var(--size);
  height:var(--size);
  background:radial-gradient(circle closest-side, turquoise, transparent);
  transform:translate(-50%, -50%);
  -webkit-transform:translate(-50%, -50%);
  -moz-transform:translate(-50%, -50%);
  -ms-transform:translate(-50%, -50%);
  -o-transform:translate(-50%, -50%);
  transition:width 0.2s ease, height 0.2s ease;
  -webkit-transition:width 0.2s ease, height 0.2s ease;
  -moz-transition:width 0.2s ease, height 0.2s ease;
  -ms-transition:width 0.2s ease, height 0.2s ease;
  -o-transition:width 0.2s ease, height 0.2s ease;
}
.knopka_naveden:hover:before{
  --size:200px;
}
.knopka_naveden:hover{
  color:#111;
  cursor: none;
}
.knopka_naveden span{
  position:relative;
  font-weight:bold;
}

JS

Код
var btn = document.querySelector('.knopka_naveden');

btn.onmousemove = function(e) {
  var x = e.pageX - btn.offsetLeft;
  var y = e.pageY - btn.offsetTop;
  btn.style.setProperty('--x', x + 'px');
  btn.style.setProperty('--y', y + 'px');
}

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

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

Демонстрация
14 Января 2023 Загрузок: 1 Просмотров: 584 Комментариев: (0)

Поделиться в социальных сетях

Материал разместил

Оставь свой отзыв

Комментарии: 0
avatar