Snippets Card

Bootstrap 5 Ticket Cards with Hover Effect

Bootstrap 5 ticket cards with image headers, price and a hover lift.

Bootstrap 5 No jQuery Feb 2020 3K views

<section class="wdw-stage">
  <div class="container" style="max-width:1100px">
    <div class="mb-4">
      <span class="wdw-eyebrow">Tickets</span>
      <h2 class="wdw-heading h2 mb-1">Pick your experience</h2>
      <p class="wdw-muted mb-0">Choose a day out and book your spot in one tap.</p>
    </div>
    <div class="row g-4">
      <div class="col-12 col-md-4">
        <article class="ticket wdw-card h-100">
          <div class="ticket-media">
            <img class="ticket-img" src="https://images.unsplash.com/photo-1578944032637-f09897c5233d?q=80&fm=jpg&crop=entropy&w=600&fit=max" alt="Orange wildflower against a pale sky" loading="lazy">
            <span class="ticket-date badge rounded-pill">Sat 14 Jun</span>
          </div>
          <div class="ticket-body d-flex flex-column p-4 p-lg-4">
            <span class="badge rounded-pill text-bg-primary mb-2 align-self-start">Guided visit</span>
            <h3 class="h5 fw-bold mb-1">Highland flower walk</h3>
            <p class="wdw-muted small mb-4">A relaxed morning among alpine blooms.</p>
            <div class="d-flex justify-content-between align-items-center gap-2 mt-auto">
              <span class="fw-bold">From €0 <span class="wdw-muted fw-normal small">to €15</span></span>
              <button type="button" class="btn btn-primary rounded-pill px-4 ticket-cta" aria-label="Book Highland flower walk">Book</button>
            </div>
          </div>
        </article>
      </div>
      <div class="col-12 col-md-4">
        <article class="ticket wdw-card h-100">
          <div class="ticket-media">
            <img class="ticket-img" src="https://images.unsplash.com/photo-1580137197581-df2bb346a786?q=80&fm=jpg&crop=entropy&w=600&fit=max" alt="Snow-covered mountain peak" loading="lazy">
            <span class="ticket-date badge rounded-pill">Sun 15 Jun</span>
          </div>
          <div class="ticket-body d-flex flex-column p-4 p-lg-4">
            <span class="badge rounded-pill text-bg-primary mb-2 align-self-start">Summit day</span>
            <h3 class="h5 fw-bold mb-1">Glacier panorama</h3>
            <p class="wdw-muted small mb-4">Cable car, guide and a hot lunch at altitude.</p>
            <div class="d-flex justify-content-between align-items-center gap-2 mt-auto">
              <span class="fw-bold">From €0 <span class="wdw-muted fw-normal small">to €35</span></span>
              <button type="button" class="btn btn-primary rounded-pill px-4 ticket-cta" aria-label="Book Glacier panorama">Book</button>
            </div>
          </div>
        </article>
      </div>
      <div class="col-12 col-md-4">
        <article class="ticket wdw-card h-100">
          <div class="ticket-media">
            <img class="ticket-img" src="https://images.unsplash.com/photo-1579489225078-27977a77bf72?q=80&fm=jpg&crop=entropy&w=600&fit=max" alt="Waterfall in a dark forest" loading="lazy">
            <span class="ticket-date badge rounded-pill">Sat 21 Jun</span>
          </div>
          <div class="ticket-body d-flex flex-column p-4 p-lg-4">
            <span class="badge rounded-pill text-bg-primary mb-2 align-self-start">Forest trail</span>
            <h3 class="h5 fw-bold mb-1">Waterfall hike</h3>
            <p class="wdw-muted small mb-4">Two hours of shaded trail ending at the falls.</p>
            <div class="d-flex justify-content-between align-items-center gap-2 mt-auto">
              <span class="fw-bold">€20</span>
              <button type="button" class="btn btn-primary rounded-pill px-4 ticket-cta" aria-label="Book Waterfall hike">Book</button>
            </div>
          </div>
        </article>
      </div>
    </div>
  </div>
</section>

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