Carousel
A slideshow component for cycling through elements—images or slides of text—like a carousel.
How it works
The carousel is a slideshow for cycling through a series of content, built with CSS 3D transforms and a bit of JavaScript. It works with a series of images, text, or custom markup. It also includes support for previous/next controls and indicators.
In browsers where the Page Visibility API is supported, the carousel will avoid sliding when the webpage is not visible to the user (such as when the browser tab is inactive, the browser window is minimized, etc.).
The animation effect of this component is dependent on the prefers-reduced-motion
media query. See the reduced motion section of our accessibility documentation.
Please be aware that nested carousels are not supported, and carousels are generally not compliant with accessibility standards.
Lastly, if you’re building our JavaScript from source, it requires util.js
.
Examples
Carousels don’t automatically normalize slide dimensions. As such, you may need to use additional utilities or custom styles to appropriately size content. While carousels support previous/next controls and indicators, they’re not explicitly required. Add and customize as you see fit.
The .active
class needs to be added to one of the slides otherwise the carousel will not be visible. Also be sure to set a unique id on the .carousel
for optional controls, especially if you’re using multiple carousels on a single page. Control and indicator elements must have a data-target
attribute (or href
for links) that matches the id of the .carousel
element.