Snippets Buttons

Bootstrap 5 Round Button with Hover Ripple Animation

A round add button that rotates a quarter turn and radiates soft concentric rings on hover or focus. Built with an inline SVG plus icon and pure CSS transitions.

Bootstrap 5 No jQuery Aug 2019 2.1K views

<section class="wdw-stage">
  <div class="container" style="max-width:860px">
    <div class="wdw-card p-4 p-md-5">
      <div class="text-center mb-4 mb-md-5">
        <span class="wdw-eyebrow mb-1">Quick actions</span>
        <h2 class="wdw-heading display-6 mb-0">Hover to add <span class="d-none d-sm-inline" aria-hidden="true">→</span></h2>
      </div>
      <div class="d-flex flex-wrap justify-content-center align-items-center gap-3 gap-md-5 py-3">
        <button type="button" class="btn btn-primary rounded-circle p-0 ripple-btn ripple-lg ripple-idle" aria-label="Add new item">
          <svg viewBox="0 0 24 24" width="36" height="36" fill="none" stroke="currentColor" stroke-width="2.25" stroke-linecap="round" aria-hidden="true"><path d="M12 5v14M5 12h14"/></svg>
        </button>
        <button type="button" class="btn btn-primary rounded-circle p-0 ripple-btn" aria-label="Like">
          <svg viewBox="0 0 24 24" width="26" height="26" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1-1.1a5.5 5.5 0 0 0-7.8 7.8l1 1.1L12 21l7.8-7.5 1-1.1a5.5 5.5 0 0 0 0-7.8Z"/></svg>
        </button>
        <button type="button" class="btn btn-primary rounded-circle p-0 ripple-btn" aria-label="Share">
          <svg viewBox="0 0 24 24" width="26" height="26" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="18" cy="5" r="3"/><circle cx="6" cy="12" r="3"/><circle cx="18" cy="19" r="3"/><path d="m8.6 13.5 6.8 4M15.4 6.5l-6.8 4"/></svg>
        </button>
        <button type="button" class="btn btn-primary rounded-circle p-0 ripple-btn" aria-label="Chat">
          <svg viewBox="0 0 24 24" width="26" height="26" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M21 12a8 8 0 0 1-11.6 7.1L4 20l1-4.6A8 8 0 1 1 21 12Z"/></svg>
        </button>
      </div>
    </div>
  </div>
</section>

Built on Bootstrap 5.3.8 with plain JavaScript — no jQuery. Supports light and dark mode via data-bs-theme.

Free to use in personal and commercial projects under the MIT license.