Embeds

Embeds - Bootstrap 5 & Material Design 2.0

Create responsive video or slideshow embeds based on the width of the parent by creating an intrinsic ratio that scales on any device.


Basic example

Rules are directly applied to <iframe>, <embed>, <video>, and <object> elements; optionally use an explicit descendant class .embed-responsive-item when you want to match the styling for other attributes.

Wrap any embed like an <iframe> in a parent element with .embed-responsive and an aspect ratio. The .embed-responsive-item isn’t strictly required, but we encourage it.


          <div class="embed-responsive embed-responsive-16by9">
            <iframe
              class="embed-responsive-item"
              src="https://www.youtube.com/embed/vlDzYIIOYmM"
              title="YouTube video"
              allowfullscreen
            ></iframe>
          </div>
        

Aspect ratios

Aspect ratios can be customized with modifier classes. By default the following ratio classes are provided:


          <!-- 21:9 aspect ratio -->
          <div class="embed-responsive embed-responsive-21by9">
            <iframe class="embed-responsive-item" src="..."></iframe>
          </div>

          <!-- 16:9 aspect ratio -->
          <div class="embed-responsive embed-responsive-16by9">
            <iframe class="embed-responsive-item" src="..."></iframe>
          </div>

          <!-- 4:3 aspect ratio -->
          <div class="embed-responsive embed-responsive-4by3">
            <iframe class="embed-responsive-item" src="..."></iframe>
          </div>

          <!-- 1:1 aspect ratio -->
          <div class="embed-responsive embed-responsive-1by1">
            <iframe class="embed-responsive-item" src="..."></iframe>
          </div>
        

Within _variables.scss, you can change the aspect ratios you want to use. Here’s an example of the $embed-responsive-aspect-ratios map:


          $embed-responsive-aspect-ratios: (
            "21by9": (
              x: 21,
              y: 9
            ),
            "16by9": (
              x: 16,
              y: 9
            ),
            "4by3": (
              x: 4,
              y: 3
            ),
            "1by1": (
              x: 1,
              y: 1
            )
          );