StealThis .dev

Photography — Testimonials

A gallery-dark testimonials section for a photographer's site: quote cards paired with client portraits, five-star ratings, and an auto-advancing carousel with dot navigation, pause-on-hover, and keyboard controls. Thin uppercase labels, a Fraunces display serif, and full-bleed portrait imagery give it an editorial, image-first feel that keeps the focus on real client voices.

Open in Lab
html css vanilla-js
Targets: JS HTML

Code

A dark, editorial testimonials block built for a portrait and wedding photographer. Each slide pairs a full-bleed client portrait with a large Fraunces pull-quote, a five-star rating, and the client’s name, role, and shoot type. The layout leans into gallery whitespace, thin uppercase kicker labels, and warm sand accents drawn straight from the photography palette.

The carousel auto-advances every few seconds and loops seamlessly. Readers can jump to any testimonial with the dot navigation, step through with the previous and next arrows, or use the left and right arrow keys once the region is focused. Hovering the card pauses the timer so nobody loses their place mid-read, and a slim progress bar shows how long until the next slide.

Everything is vanilla HTML, CSS, and JavaScript with no dependencies. Slides cross-fade with a subtle lift, controls expose proper aria labels and visible focus rings, and the whole component reflows to a single-column, image-on-top layout below 520px so it stays legible on phones.