How to Use Multiple Background Images with CSS
See CSS: Tips and Tricks for similar articles.CSS3 offers the ability to include multiple background images for a given element - use a comma-delimited list to specify as many as you like:
background-image:url(img1.gif), url(img2.png), url(img3.gif)
The order of the listed background images determines the position of the layer
relative to the viewer, akin to the CSS z-index
property: the first background
image is on "top", the next below that, etc.
In similar fasion, specifying a comma-delimited list of background-position and/or background-repeat values assigns the position and repeat, respectively, for the multiple background images, as such:
div {
background-image:url(img1.gif), url(img2.png), url(img3.gif);
background-position:center top, right top, center bottom;
background-repeat:no-repeat, repeat-x, repeat-y;
}
In the example above, background image img1.gif
is positioned center top
and not repeated, img2.png
is positioned right top and repeated horizontally,
and img3.gif
is positioned center bottom and repeated vertically.
Excess position
or repeat
values are ignored; that is, for an element
for which three background images are specified and for which, say, four background-position
values are set, the fourth set of position values would be ignored. If too few position
or repeat values (i.e., fewer than the number of background images) are set, then
the position or repeat values are repeated.
Specifying background-color when applying multiple background images applies the color as the final (lowest) background layer, behind all of the background images.
The background shorthand property is still available with multiple background images:
div {
background:url(img1.gif) center top no-repeat, url(img2.png)
right top repeat-x, url(img3.gif) center bottom repeat-y;
}
Follow these steps to see a demonstration of multiple background images:
- Create or download three images to use as backgrounds. These can be anything, but
they should be small so that you can see how
background-position
andbackground-repeat
work. - Make a simple HTML document containing just a single
div
element.<!DOCTYPE HTML> <html> <head> <title>Multiple Background Images</title> </head> <body> <div> </div> </body> </html>
- Put a
style
element in the head and use the CSS from earlier in this How-To to display the multiple image backgrounds. Make sure to also give thediv
awidth
and aheight
.<style type="text/css"> div { width:750px; height:750px; background-image:url(img1.png), url(img2.png), url(img3.png); background-position:center top, right top, center bottom; background-repeat:no-repeat, repeat-x, repeat-y; } </style>
- Open the HTML page in a browser. The page should look like this:
Related Articles
- Learn the Very Basics of CSS in One Minute
- How to Create a CSS External Style Sheet
- How to Align Text with CSS
- How to Create a Horizontal Navigation Menu with CSS
- How to Create a Fixed-Width Layout with CSS
- How to Remove Spacing Between Table Borders with CSS
- How to Set a Background Image with CSS
- How to Set Text Spacing and Placement in CSS
- How to Style a Table with CSS
- How to Create Boxes with Rounded Corners in CSS
- How to Create a Vertical Navigation Menu with CSS
- How to Use the CSS Opacity Property
- How to Use Multiple Background Images with CSS (this article)
- Absolute Positioning with CSS
- How to Use the CSS Border Shorthand Property
- How to Create CSS Button Links
- How to Create a Fluid-Width Layout with CSS
- How to Set Text and Background Color with CSS
- How to Create a CSS Embedded Style Sheet
- How to Add Inline Styles to CSS
- How to Create a Border with CSS
- How to Use the CSS Padding Shorthand Property
- How to Create a Fly-Out Menu with CSS
- How to Use CSS Media Queries in Responsive Design
- How to Adjust Margins with CSS
- How to Use the CSS Background Shorthand Property
- How to Create a Form without Tables Using CSS
- How to Modify Fonts in CSS
- How to Create a Drop-Down Menu with CSS
- How to Apply Padding with CSS
- Fixed Positioning with CSS
- How to Use CSS Transitions
- How to Use the CSS list-style Shorthand Property
- How to Change Text Style in CSS
- How to Create CSS Sprites
- How to Use CSS with Different Media Types
- How to Import Style Sheets with @import in CSS
- How to Use the CSS White-Space Property
- How to Use the CSS Z-index Property
- How to Create Drop Shadows with the box-shadow Property in CSS3