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