Bird
Raised Fist0
Bootsrapmarkup~5 mins

Carousel captions in Bootsrap

Choose your learning style10 modes available
Introduction

Carousel captions help explain what each slide shows. They make the carousel easier to understand.

You want to describe images in a slideshow on your website.
You need to add titles and short text to each carousel slide.
You want visitors to know more about each picture or message in the carousel.
You want to improve accessibility by adding text descriptions.
You want to make your carousel more engaging with text overlays.
Syntax
Bootsrap
<div class="carousel-caption">
  <h5>Slide title</h5>
  <p>Some description text.</p>
</div>

The carousel-caption class places text over the carousel image.

You can use headings and paragraphs inside for titles and descriptions.

Examples
A simple caption with a title and description for the first slide.
Bootsrap
<div class="carousel-caption">
  <h5>First Slide</h5>
  <p>This is the first slide caption.</p>
</div>
Caption hidden on small screens using Bootstrap's responsive display classes.
Bootsrap
<div class="carousel-caption d-none d-md-block">
  <h5>Second Slide</h5>
  <p>Visible only on medium and larger screens.</p>
</div>
Caption text aligned to the left instead of center.
Bootsrap
<div class="carousel-caption text-start">
  <h5>Left Aligned Caption</h5>
  <p>Text aligned to the left side.</p>
</div>
Sample Program

This example shows a Bootstrap carousel with three slides. Each slide has an image and a caption with a title and description. Captions are visible on medium and larger screens. The third slide's caption text is aligned to the left.

Bootsrap
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1" />
  <title>Bootstrap Carousel with Captions</title>
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet" />
</head>
<body>
  <main>
    <div id="carouselExampleCaptions" class="carousel slide" data-bs-ride="carousel">
      <div class="carousel-indicators">
        <button type="button" data-bs-target="#carouselExampleCaptions" data-bs-slide-to="0" class="active" aria-current="true" aria-label="Slide 1"></button>
        <button type="button" data-bs-target="#carouselExampleCaptions" data-bs-slide-to="1" aria-label="Slide 2"></button>
        <button type="button" data-bs-target="#carouselExampleCaptions" data-bs-slide-to="2" aria-label="Slide 3"></button>
      </div>
      <div class="carousel-inner">
        <div class="carousel-item active">
          <img src="https://via.placeholder.com/800x400.png?text=First+Slide" class="d-block w-100" alt="First slide image" />
          <div class="carousel-caption d-none d-md-block">
            <h5>First Slide Title</h5>
            <p>This is the caption for the first slide.</p>
          </div>
        </div>
        <div class="carousel-item">
          <img src="https://via.placeholder.com/800x400.png?text=Second+Slide" class="d-block w-100" alt="Second slide image" />
          <div class="carousel-caption d-none d-md-block">
            <h5>Second Slide Title</h5>
            <p>This caption appears on medium and larger screens.</p>
          </div>
        </div>
        <div class="carousel-item">
          <img src="https://via.placeholder.com/800x400.png?text=Third+Slide" class="d-block w-100" alt="Third slide image" />
          <div class="carousel-caption d-none d-md-block text-start">
            <h5>Third Slide Left Caption</h5>
            <p>Left aligned caption text for the third slide.</p>
          </div>
        </div>
      </div>
      <button class="carousel-control-prev" type="button" data-bs-target="#carouselExampleCaptions" data-bs-slide="prev">
        <span class="carousel-control-prev-icon" aria-hidden="true"></span>
        <span class="visually-hidden">Previous</span>
      </button>
      <button class="carousel-control-next" type="button" data-bs-target="#carouselExampleCaptions" data-bs-slide="next">
        <span class="carousel-control-next-icon" aria-hidden="true"></span>
        <span class="visually-hidden">Next</span>
      </button>
    </div>
  </main>
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
</body>
</html>
OutputSuccess
Important Notes

Use alt attributes on images for accessibility.

Captions can be hidden on small screens using Bootstrap's display utility classes like d-none d-md-block.

Use aria-label and visually-hidden classes for better screen reader support on controls.

Summary

Carousel captions add text overlays to slides to explain content.

Use the carousel-caption class inside each carousel-item.

Control caption visibility and alignment with Bootstrap utility classes.

Practice

(1/5)
1. What is the purpose of the carousel-caption class in a Bootstrap carousel?
easy
A. To add text overlays on each slide explaining the content
B. To control the slide transition speed
C. To add navigation arrows to the carousel
D. To set the background color of the carousel

Solution

  1. Step 1: Understand the role of carousel-caption

    The carousel-caption class is used inside each carousel-item to add text overlays on slides.
  2. Step 2: Differentiate from other carousel features

    Other options control speed, navigation, or styling but do not add text overlays.
  3. Final Answer:

    To add text overlays on each slide explaining the content -> Option A
  4. Quick Check:

    carousel-caption adds text overlays = C [OK]
Hint: Remember captions explain slides visually [OK]
Common Mistakes:
  • Confusing caption with navigation controls
  • Thinking it changes slide speed
  • Assuming it styles background color
2. Which of the following is the correct way to add a caption inside a Bootstrap carousel slide?
easy
A. <caption>Caption Text</caption> inside carousel-item
B. <div class='carousel-caption'>Caption Text</div> inside carousel-item
C. <div class='carousel-text'>Caption Text</div> outside carousel-item
D. <span class='carousel-caption'>Caption Text</span> inside carousel-inner

Solution

  1. Step 1: Identify correct caption container

    The Bootstrap documentation specifies using <div class='carousel-caption'> inside each carousel-item.
  2. Step 2: Check other options for correctness

    <caption> is for tables, carousel-text is not a Bootstrap class, and span is less common and outside the item is incorrect.
  3. Final Answer:

    <div class='carousel-caption'>Caption Text</div> inside carousel-item -> Option B
  4. Quick Check:

    Use div.carousel-caption inside carousel-item = B [OK]
Hint: Use div with class carousel-caption inside each slide [OK]
Common Mistakes:
  • Using <caption> tag which is for tables
  • Placing caption outside carousel-item
  • Using wrong class names like carousel-text
3. Given this snippet inside a Bootstrap carousel slide:
<div class='carousel-caption text-start'>Caption</div>

What will be the alignment of the caption text when rendered?
medium
A. Text hidden and not visible
B. Text centered horizontally
C. Text aligned to the right side of the slide
D. Text aligned to the left side of the slide

Solution

  1. Step 1: Understand Bootstrap text alignment classes

    The class text-start aligns text to the left side in Bootstrap.
  2. Step 2: Apply alignment to carousel-caption

    Since carousel-caption contains text-start, the caption text will appear left aligned on the slide.
  3. Final Answer:

    Text aligned to the left side of the slide -> Option D
  4. Quick Check:

    text-start means left aligned = A [OK]
Hint: text-start means left alignment in Bootstrap [OK]
Common Mistakes:
  • Confusing text-start with center or right alignment
  • Assuming captions are always centered
  • Thinking text-start hides text
4. You wrote this code inside a Bootstrap carousel slide:
<div class='carousel-caption text-center'>Welcome</div>

But the caption text does not appear on the slide. What is the likely cause?
medium
A. Missing carousel-item wrapper around the caption
B. Using text-center hides the caption
C. The caption must be outside carousel-inner
D. Bootstrap requires captions to be <span> not <div>

Solution

  1. Step 1: Check caption placement rules

    Bootstrap requires carousel-caption to be inside a carousel-item for it to show properly.
  2. Step 2: Evaluate other options

    text-center does not hide text, captions must be inside carousel-inner, and div is the correct tag.
  3. Final Answer:

    Missing carousel-item wrapper around the caption -> Option A
  4. Quick Check:

    Caption must be inside carousel-item = A [OK]
Hint: Always nest captions inside carousel-item div [OK]
Common Mistakes:
  • Placing caption outside carousel-item
  • Thinking text-center hides text
  • Using wrong tag for caption
5. You want to create a Bootstrap carousel with three slides, each having a caption aligned differently: first left, second center, third right. Which code snippet correctly applies these caption alignments?
hard
A.
<div class='carousel-item active'>
  <div class='carousel-caption text-center'>First</div>
</div>
<div class='carousel-item'>
  <div class='carousel-caption text-center'>Second</div>
</div>
<div class='carousel-item'>
  <div class='carousel-caption text-center'>Third</div>
</div>
B.
<div class='carousel-item active'>
  <div class='carousel-caption text-end'>First</div>
</div>
<div class='carousel-item'>
  <div class='carousel-caption text-start'>Second</div>
</div>
<div class='carousel-item'>
  <div class='carousel-caption text-center'>Third</div>
</div>
C.
<div class='carousel-item active'>
  <div class='carousel-caption text-start'>First</div>
</div>
<div class='carousel-item'>
  <div class='carousel-caption text-center'>Second</div>
</div>
<div class='carousel-item'>
  <div class='carousel-caption text-end'>Third</div>
</div>
D.
<div class='carousel-item active'>
  <div class='carousel-caption text-center'>First</div>
</div>
<div class='carousel-item'>
  <div class='carousel-caption text-end'>Second</div>
</div>
<div class='carousel-item'>
  <div class='carousel-caption text-start'>Third</div>
</div>

Solution

  1. Step 1: Match caption alignment classes to slides

    The first slide uses text-start for left alignment, second uses text-center for center, and third uses text-end for right alignment.
  2. Step 2: Verify code structure and correctness

    Each caption is inside its carousel-item with correct alignment classes matching the requirement.
  3. Final Answer:

    Code snippet with first left, second center, third right using text-start, text-center, text-end respectively -> Option C
  4. Quick Check:

    Use text-start, text-center, text-end for left, center, right captions = D [OK]
Hint: Use text-start, text-center, text-end for left, center, right [OK]
Common Mistakes:
  • Mixing alignment classes order
  • Using same alignment for all captions
  • Placing captions outside carousel-item
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard