Carousels
A slideshow component for cycling through elements or slides of text—like a carousel.
Basic Examples
Carousels don’t automatically normalize slide dimensions. You may need to use additional utilities to appropriate function.
Code Example
<div id="carouselExampleSlidesOnly" class="carousel slide" data-bs-ride="carousel"> <div class="carousel-inner"> <div class="carousel-item active"> <img src="..." class="d-block w-100" alt="..."> </div> <div class="carousel-item"> <img src="..." class="d-block w-100" alt="..."> </div> <div class="carousel-item"> <img src="..." class="d-block w-100" alt="..."> </div> </div> </div>
With Controls & Indicators
You can add the indicators to the carousel, as well as the previous and next controls too.
Code Example
<div id="carouselExConInd" class="carousel slide" data-bs-ride="carousel"="carousel"> <ol class="carousel-indicators"> <li data-bs-target="#carouselExConInd" data-bs-slide-to="0" class="active"></li> <li data-bs-target="#carouselExConInd" data-bs-slide-to="1"></li> <li data-bs-target="#carouselExConInd" data-bs-slide-to="2"></li> </ol> <div class="carousel-inner"> <div class="carousel-item active"> <img src="./images/slides/slide-a.jpg" class="d-block w-100" alt="carousel"> </div> <div class="carousel-item"> <img src="./images/slides/slide-b.jpg" class="d-block w-100" alt="carousel"> </div> <div class="carousel-item"> <img src="./images/slides/slide-c.jpg" class="d-block w-100" alt="carousel"> </div> </div> <a class="carousel-control-prev" href="#carouselExConInd" role="button" data-bs-slide="prev"> <span class="carousel-control-prev-icon" aria-hidden="true"></span> <span class="visually-hidden">Previous</span> </a> <a class="carousel-control-next" href="#carouselExConInd" role="button" data-bs-slide="next"> <span class="carousel-control-next-icon" aria-hidden="true"></span> <span class="visually-hidden">Next</span> </a> </div>
With Captions
Add captions to your slides easily with the .carousel-caption
element within any .carousel-item
. They can be easily hidden on smaller viewports, as shown below, with optional display utilities. We hide them initially with .d-none
and bring them back on medium-sized devices with .d-md-block
.
Code Example
<div id="carouselExCap" class="carousel slide" data-bs-ride="carousel"="carousel"> <ol class="carousel-indicators"> <li data-bs-target="#carouselExCap" data-bs-slide-to="0" class="active"></li> <li data-bs-target="#carouselExCap" data-bs-slide-to="1"></li> <li data-bs-target="#carouselExCap" data-bs-slide-to="2"></li> </ol> <div class="carousel-inner text-light"> <div class="carousel-item active"> <img src="./images/slides/slide-a.jpg" class="d-block w-100" alt="..."> <div class="carousel-caption d-none d-md-block"> <h5>First slide label</h5> <p>Nulla vitae elit libero, a pharetra augue mollis interdum.</p> </div> </div> <div class="carousel-item"> <img src="./images/slides/slide-b.jpg" class="d-block w-100" alt="..."> <div class="carousel-caption d-none d-md-block"> <h5>Second slide label</h5> <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p> </div> </div> <div class="carousel-item"> <img src="./images/slides/slide-c.jpg" class="d-block w-100" alt="..."> <div class="carousel-caption d-none d-md-block"> <h5>Third slide label</h5> <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur.</p> </div> </div> </div> <a class="carousel-control-prev" href="#carouselExCap" role="button" data-bs-slide="prev"> <span class="carousel-control-prev-icon" aria-hidden="true"></span> <span class="visually-hidden">Previous</span> </a> <a class="carousel-control-next" href="#carouselExCap" role="button" data-bs-slide="next"> <span class="carousel-control-next-icon" aria-hidden="true"></span> <span class="visually-hidden">Next</span> </a> </div>
Crossfade Effect
Add .carousel-fade
to your carousel to animate slides with a fade transition instead of a slide.
Code Example
<div id="carouselExFade" class="carousel slide carousel-fade" data-bs-ride="carousel"> <div class="carousel-inner"> <div class="carousel-item active"> <img src="./images/slides/slide-a.jpg" class="d-block w-100" alt="carousel"> </div> <div class="carousel-item"> <img src="./images/slides/slide-b.jpg" class="d-block w-100" alt="carousel"> </div> <div class="carousel-item"> <img src="./images/slides/slide-c.jpg" class="d-block w-100" alt="carousel"> </div> </div> <a class="carousel-control-prev" href="#carouselExFade" role="button" data-bs-slide="prev"> <span class="carousel-control-prev-icon" aria-hidden="true"></span> <span class="visually-hidden">Previous</span> </a> <a class="carousel-control-next" href="#carouselExFade" role="button" data-bs-slide="next"> <span class="carousel-control-next-icon" aria-hidden="true"></span> <span class="visually-hidden">Next</span> </a> </div>