CSS Multiple Backgrounds

In this chapter you will learn how to add multiple background images to one 
element.
You will also learn about the following properties:
background-size
background-origin
background-clip
CSS allows you to add multiple background images for an element, through the 
background-image property.
The different background images are separated by commas, and the images are 
stacked on top of each other, where the first image is closest to the viewer.
The following example has two background images, the first image is a flower 
(aligned to the bottom and right) and the second image is a paper background (aligned to the top-left corner):
Multiple background images can be specified using either the individual 
background properties (as above) or the background shorthand property.
The following example uses the background shorthand property (same result as 
example above):
The CSS background-size property allows you to specify the size of background images.
The size can be specified in lengths, percentages, or by using one of the two 
keywords: contain or cover.
The following example resizes a background image to much smaller than the original image (using pixels):
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.
Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat.
Here is the code:
The two other possible values for background-size are contain 
and cover.
The contain keyword scales the background image to be as large as possible 
(but both its width and its height must fit inside the content area). As such, depending on the proportions of the background 
image and the background positioning area, there may be some areas of 
the background which are not covered by the background image.
The cover keyword scales the background image so that the content area is 
completely covered by the background image (both its width and height are equal to or 
exceed the content area). As such, some parts of the background image may not be 
visible in the background positioning area.
The following example illustrates the use of contain and cover:
The background-size property also accepts multiple values for background size 
(using a comma-separated list), when working with multiple backgrounds.
The following example has three background images specified, with different 
background-size value for each image:
Now we want to have a background image on a website that covers the entire 
browser window at all times.
The requirements are as follows:
Fill the entire page with the image (no white space)
Scale image as needed
Center image on page
Do not cause scrollbars
The following example shows how to do it; Use the <html> element 
(the <html> element is always at least the height of the browser window). Then set a fixed and centered background on it. 
Then adjust its size with the 
background-size property:
You could also use different background properties on a <div> to create a hero image (a large image with text), and place it where you want.
The CSS background-origin property specifies where the background image is 
positioned.
The property takes three different values:
border-box - the background image starts from the upper left corner of the border
padding-box - (default) the background image starts from the upper left corner of the padding edge
content-box - the background image starts from the upper left corner of the content
The following example illustrates the background-origin property:
The CSS background-clip property specifies the painting area of the background.
The property takes three different values:
border-box - (default) the background is painted to the outside edge of the border
padding-box - the background is painted to the outside edge of the padding
content-box - the background is painted within the content box
The following example illustrates the background-clip property:
Add two background images to the <body> element.
img1.gif and img2.gif.
Make sure that img2.gif is displayed on top of img1.gif.
<style>
body {
  background-image: ;
}
</style>

<body>
  <h1>This is a heading</h1>
  <p>This is a paragraph</p>
  <p>This is a paragraph</p>
</body>

Start the Exercise
We just launchedW3Schools videos
Get certifiedby completinga course today!
If you want to report an error, or if you want to make a suggestion, do not hesitate to send us an e-mail:
help@w3schools.com
Your message has been sent to W3Schools.