跳至主要內容 跳至文件導覽
Added in v5.3 View on GitHub

Object fit

使用 object-fit 通用類別來修改替換元素(例如 <img><video>)的內容應如何調整大小以適應其容器。

運作原理(How it works)

使用我們的響應式 object-fit 通用類別來變更 object-fit 屬性的值。此屬性告訴內容以多種方式填滿父容器,例如保持長寬比或延伸以佔用盡可能多的空間。

object-fit 值的類別使用 .object-fit-{value} 格式命名。可從以下值中選擇:

  • contain
  • cover
  • fill
  • scale(用於 scale-down)
  • none

範例(Examples)

object-fit-{value} 類別加入到替換元素

Placeholder: Object fit contain Placeholder: Object fit cover Placeholder: Object fit fill Placeholder: Object fit scale down Placeholder: Object fit none
html
<img src="..." class="object-fit-contain border rounded" alt="...">
<img src="..." class="object-fit-cover border rounded" alt="...">
<img src="..." class="object-fit-fill border rounded" alt="...">
<img src="..." class="object-fit-scale border rounded" alt="...">
<img src="..." class="object-fit-none border rounded" alt="...">

響應式(Responsive)

每個 object-fit 值也有響應式變體,使用 .object-fit-{breakpoint}-{value} 格式,適用於以下中斷點縮寫:smmdlgxlxxl。可以根據需要組合類別來產生各種效果。

Placeholder: Contain on sm Placeholder: Contain on md Placeholder: Contain on lg Placeholder: Contain on xl Placeholder: Contain on xxl
html
<img src="..." class="object-fit-sm-contain border rounded" alt="...">
<img src="..." class="object-fit-md-contain border rounded" alt="...">
<img src="..." class="object-fit-lg-contain border rounded" alt="...">
<img src="..." class="object-fit-xl-contain border rounded" alt="...">
<img src="..." class="object-fit-xxl-contain border rounded" alt="...">

影片(Video)

.object-fit-{value} 和響應式 .object-fit-{breakpoint}-{value} 工具程式也適用於 <video> 元素。

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

CSS

Sass utilities API

Object fit 通用類別在 scss/_utilities.scss 中的 utilities API 中宣告。了解如何使用 utilities API。

"object-fit": (
  responsive: true,
  property: object-fit,
  values: (
    contain: contain,
    cover: cover,
    fill: fill,
    scale: scale-down,
    none: none,
  )
),