Snippets Animation

Bootstrap 5 Category Image Cards with Zoom Hover

A bento-style grid of fashion category tiles with full-bleed photos, a legible gradient scrim and a slow zoom on hover.

Bootstrap 5 No jQuery Apr 2020 2.4K views

<section class="wdw-stage">
  <div class="container" style="max-width: 1100px">
    <div class="d-flex flex-wrap align-items-end justify-content-between gap-3 mb-4">
      <div>
        <span class="wdw-eyebrow mb-2">Shop by category</span>
        <h1 class="wdw-heading display-6 mb-0">Find your next favourite</h1>
      </div>
      <a href="#" class="btn btn-outline-primary rounded-pill px-4">All categories</a>
    </div>
    <div class="wdw-bento">
      <a href="#" class="wdw-tile wdw-tile-tall">
        <img src="https://images.unsplash.com/photo-1483985988355-763728e1935b?auto=format&fit=crop&w=900&q=70" alt="Woman carrying shopping bags">
        <span class="wdw-tile-body"><span class="wdw-tile-tag">Bestsellers</span><span class="wdw-tile-title">Our popular products</span><span class="wdw-tile-cta">Shop now <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M5 12h14M13 6l6 6-6 6"/></svg></span></span>
      </a>
      <a href="#" class="wdw-tile">
        <img src="https://images.unsplash.com/photo-1445205170230-053b83016050?auto=format&fit=crop&w=900&q=70" alt="Winter outfits on a street">
        <span class="wdw-tile-body"><span class="wdw-tile-title">Winter collection</span><span class="wdw-tile-cta">Explore <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M5 12h14M13 6l6 6-6 6"/></svg></span></span>
      </a>
      <a href="#" class="wdw-tile">
        <img src="https://images.unsplash.com/photo-1515886657613-9f3515b0c78f?auto=format&fit=crop&w=900&q=70" alt="Woman in summer fashion">
        <span class="wdw-tile-body"><span class="wdw-tile-title">Summer collection</span><span class="wdw-tile-cta">Explore <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M5 12h14M13 6l6 6-6 6"/></svg></span></span>
      </a>
      <a href="#" class="wdw-tile wdw-tile-wide">
        <img src="https://images.unsplash.com/photo-1441986300917-64674bd600d8?auto=format&fit=crop&w=900&q=70" alt="Rails of clothes in a store">
        <span class="wdw-tile-body"><span class="wdw-tile-tag wdw-tile-sale">Sale</span><span class="wdw-tile-title">Up to 75% off the spring sale</span><span class="wdw-tile-cta">Shop the sale <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M5 12h14M13 6l6 6-6 6"/></svg></span></span>
      </a>
    </div>
  </div>
</section>

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