Backgrounds
Background Size
Utilities for controlling the background size of an element’s background image.
Quick reference
Class | Properties |
---|---|
bg-auto | background-size: auto; |
bg-cover | background-size: cover; |
bg-contain | background-size: contain; |
Basic usage
Auto
Use bg-auto
to display the background image at its default size.
<div class="bg-auto bg-no-repeat bg-center ..." style="background-image: url(...)"></div>
Cover
Use bg-cover
to scale the background image until it fills the background layer.
<div class="bg-cover bg-center ..." style="background-image: url(...)"></div>
Contain
Use bg-contain
to scale the background image to the outer edges without cropping or stretching.
<div class="bg-contain bg-center ..." style="background-image: url(...)"></div>
Applying conditionally
Hover, focus, and other states
Tailwind lets you conditionally apply utility classes in different states using variant modifiers. For example, use hover:bg-contain
to only apply the bg-contain
utility on hover.
<div class="bg-auto hover:bg-contain">
<!-- ... -->
</div>
For a complete list of all available state modifiers, check out the Hover, Focus, & Other States documentation.
Breakpoints and media queries
You can also use variant modifiers to target media queries like responsive breakpoints, dark mode, prefers-reduced-motion, and more. For example, use md:bg-contain
to apply the bg-contain
utility at only medium screen sizes and above.
<div class="bg-auto md:bg-contain">
<!-- ... -->
</div>
To learn more, check out the documentation on Responsive Design, Dark Mode and other media query modifiers.
Using custom values
Customizing your theme
By default, Tailwind provides utilities for auto
, cover
, and contain
background sizes. You can change, add, or remove these by editing the theme.backgroundSize
section of your config.
tailwind.config.js
module.exports = { theme: { backgroundSize: { 'auto': 'auto', 'cover': 'cover', 'contain': 'contain', '50%': '50%', '16': '4rem', } }}
Learn more about customizing the default theme in the theme customization documentation.
Arbitrary values
If you need to use a one-off background-size
value that doesn’t make sense to include in your theme, use square brackets to generate a property on the fly using any arbitrary value.
<div class="bg-[length:200px_100px]">
<!-- ... -->
</div>
Learn more about arbitrary value support in the arbitrary values documentation.