1
0
mirror of https://github.com/twbs/bootstrap.git synced 2025-08-25 14:30:46 +02:00
Files
bootstrap/site/content/docs/5.2/utilities/object-fit.md
Daniel O 0129d35796 Add new .overflow-x, .overflow-y, and object-fit utilities
Overflow utilities are self-explanatory.

The object-fit property is used to specify how an `<img>` or `<video>` should be resized to fit its container. Offers a responsive alternative to using `background-image` for a resizable fill/fit image.
2022-10-03 10:13:28 -07:00

3.3 KiB

layout, title, description, group, toc
layout title description group toc
docs Object fit Use the object fit utilities to sets how the content of a [replaced element](https://developer.mozilla.org/en-US/docs/Web/CSS/Replaced_element), such as an `<img>` or `<video>`, should be resized to fit its container. utilities true

How it works

Change the value of the object-fit property with our responsive object-fit utility classes. This property tells the content to fill the container in a variety of ways; such as "preserve that aspect ratio" or "stretch up and take up as much space as possible".

Classes for the value of object-fit are named using the format .object-fit-{value}. Choose from the following values

  • contain
  • cover
  • fill
  • scale (for scale-down)
  • none

Examples

Add the object-fit-{value} class to the replaced element:

{{< example class="d-flex overflow-auto" >}} {{< placeholder width="20%" height="120" class="object-fit-contain border rounded" text="Object Fit Contain" markup="img" >}} {{< placeholder width="20%" height="120" class="object-fit-cover border rounded" text="Object Fit Cover" markup="img" >}} {{< placeholder width="20%" height="120" class="object-fit-fill border rounded" text="Object Fit Fill" markup="img" >}} {{< placeholder width="20%" height="120" class="object-fit-scale border rounded" text="Object Fit Scale Down" markup="img" >}} {{< placeholder width="20%" height="120" class="object-fit-none border rounded" text="Object Fit None" markup="img" >}} {{< /example >}}

Responsive

Responsive variations also exist for each object-fit value using the format .object-fit-{breakpoint}-{value}, for the following breakpoint abbreviations: sm, md, lg, xl, and xxl. Classes can be combined for various effects as you need.

{{< example class="d-flex overflow-auto" >}} {{< placeholder width="20%" height="80" class="object-fit-sm-contain border rounded" text="Contain on sm" markup="img" >}} {{< placeholder width="20%" height="80" class="object-fit-md-contain border rounded" text="Contain on md" markup="img" >}} {{< placeholder width="20%" height="80" class="object-fit-lg-contain border rounded" text="Contain on lg" markup="img" >}} {{< placeholder width="20%" height="80" class="object-fit-xl-contain border rounded" text="Contain on xl" markup="img" >}} {{< placeholder width="20%" height="80" class="object-fit-xxl-contain border rounded" text="Contain on xxl" markup="img" >}} {{< /example >}}

Video Tags

Just like <img> tags, the .object-fit-{value} and responsive .object-fit-{breakpoint}-{value} utilities also work on <video> tags.

  <video src="..." class="object-fit-contain" autoplay></video>
  <video src="..." class="object-fit-cover" autoplay></video>
  <video src="..." class="object-fit-fill" autoplay></video>
  <video src="..." class="object-fit-scale" autoplay></video>
  <video src="..." class="object-fit-none" autoplay></video>

Utilities API

Object fit utilities are declared in our utilities API in scss/_utilities.scss. [Learn how to use the utilities API.]({{< docsref "/utilities/api#using-the-api" >}})

{{< scss-docs name="utils-object-fit" file="scss/_utilities.scss" >}}