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">
<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">
<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>