TGViewer
Логово верстальщика Логово верстальщика @webdevlair · 7.93K subscribers
Post #3835 990
👩‍💻 Кнопка с "волновым" эффектом

Создайте кнопку, при нажатии на которую появляется анимация "волн", расходящихся из точки клика.

Ожидаемое поведение:

• При нажатии на кнопку из точки клика расходится круг, который исчезает через мгновение.
• Анимация должна быть плавной и не мешать повторным кликам.

Решение задачи🔽

<button class="ripple-button">Нажми меня</button>

.ripple-button {
position: relative;
overflow: hidden;
padding: 10px 20px;
font-size: 16px;
color: white;
background-color: #007BFF;
border: none;
border-radius: 4px;
cursor: pointer;
}

.ripple-button .ripple {
position: absolute;
border-radius: 50%;
transform: scale(0);
animation: ripple-animation 0.6s linear;
background-color: rgba(255, 255, 255, 0.6);
}

@keyframes ripple-animation {
to {
transform: scale(4);
opacity: 0;
}
}

document.querySelector('.ripple-button').addEventListener('click', function (event) {
const ripple = document.createElement('span');
const rect = this.getBoundingClientRect();

ripple.style.width = ripple.style.height = `${Math.max(rect.width, rect.height)}px`;
ripple.style.left = `${event.clientX - rect.left - ripple.offsetWidth / 2}px`;
ripple.style.top = `${event.clientY - rect.top - ripple.offsetHeight / 2}px`;

ripple.className = 'ripple';
this.appendChild(ripple);

ripple.addEventListener('animationend', () => ripple.remove());
});
  • 👍 1
More from @webdevlair
  1. Oct 8, 2026OpenAI выкатила на GitHub 722 математические статьи — и написали их всё те же модели, толь…
  2. Oct 8, 2026Свершилось: в Chrome 155, который выкатили вчера, наконец прикрутили поддержку JPEG XL (.j…
  3. Oct 8, 2026Post #4678
  4. Oct 7, 2026История HTML и CSS: какие элементы и свойства ушли навсегда Люди обожают копаться в прошло…
  5. Oct 7, 2026Post #4676
  6. Oct 7, 2026Выпуск #805 (6 октября 2026) JavaScript Weekly открывается материалом Нолана Лоусона «Why…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →