THE WORLD'S LARGEST WEB DEVELOPER SITE

HTML Background Images


Background Images

A background image can be specified on almost any HTML element.





To add a background image in HTML, use the CSS property background-image.


Background Image on a HTML element

To add a background image on an HTML element, you can use the style attribute:

Example

Add a background image on a HTML element:

<div style="background-image: url('img_girl.jpg');">
Try it Yourself »

You can also specify the background image in the <style> element:

Example

Specify the background image in the style element:

<style>
div {
  background-image: url('img_girl.jpg');
}
</style>
Try it Yourself »

Background Image on a Page

If you want the entire page to have a background image, then you must specify the background image on the <body> element:

Example

Add a background image on a HTML page:

<style>
body {
  background-image: url('img_girl.jpg');
}
</style>
Try it Yourself »

Background Repeat

If the background image is smaller than the element, the image will repeat itself, horizontally and vertically, until it has reach the end of the element.

To explain, see what happens when we use a small image as a background inside a large div element:

The background-image property will try to fill the div element with images until it has reach the end.

Example

<style>
body {
  background-image: url('example_img_girl.jpg');
}
</style>
Try it Yourself »

To avoid the background image from repeating itself, use the background-repeat property.

Example

<style>
body {
  background-image: url('example_img_girl.jpg');
  background-repeat: no-repeat;
}
</style>
Try it Yourself »

Background Cover

If  you want  the background image cover the entire element, you can set the background-size property to cover.

Also, to make sure the entire element is always covered, set the background-attachment property to fixed:

As you can see, the image will cover the entire element, with no stretching, the image will keep its original proportions.

Example

<style>
body {
  background-image: url('img_girl.jpg');
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
}
</style>
Try it Yourself »

Background Stretch

If  you want  the background image stretch to fit the entire image in the element, you can set the background-size property to 100% 100%:

Try resizing the browser window, and you will see that the image will stretch, but always cover the entire element.

Example

<style>
body {
  background-image: url('img_girl.jpg');
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: 100% 100%;
}
</style>
Try it Yourself »

Learn More CSS

From the examples above you have learned that background images can be styled by using the CSS background properties.

To learn more about CSS background properties, study our CSS Background Tutorial.