CSS Background Shorthand

The background shorthand sets several background properties in a single declaration, keeping your CSS compact.

#Jobseeker

Find matching jobs & Auto apply with AI

Hyring
Jobseeker using Hyring to search, apply, and prepare with AI

One property, many values

Instead of writing separate lines for color, image, repeat, position, and more, the <background> shorthand lets you list them all at once. The browser assigns each value to the matching longhand property.

The shorthand

<!DOCTYPE html>
<html>
<head>
<style>
body {
  background: #fff url('bg.jpg') no-repeat center / cover;
}
</style>
</head>
<body>

<h1>Welcome</h1>
<p>Page content.</p>

</body>
</html>

The same rule written out

The shorthand above is equivalent to the longhand rules below. Both produce identical results; the shorthand is simply shorter.

Longhand equivalent

<!DOCTYPE html>
<html>
<head>
<style>
body {
  background-color: #fff;
  background-image: url('bg.jpg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
</style>
</head>
<body>

<h1>Welcome</h1>
<p>Page content.</p>

</body>
</html>

What you can include

  • background-color
  • background-image
  • background-repeat
  • background-position
  • background-size (written after position with a slash)
  • background-attachment
Note: The shorthand resets any background property you leave out to its default. If you set background: #fff and had a background-image earlier, that image is cleared. Set everything you need in the one declaration.
Note: When you only need to change one value, the individual longhand property such as background-color is clearer and avoids accidental resets.

Exercise: CSS Backgrounds

Which property sets an image as an element's background?