CSS Background

« Previous Next Chapter »

CSS background properties are used to define the background effects of an element.

CSS properties used for background effects:

  • background-color
  • background-image
  • background-repeat
  • background-attachment
  • background-position

Background Color

The background-color property specifies the background color of an element.

The background color of a page is defined in the body selector:

Example

body {background-color:#b0c4de;}

Try it yourself »

The background color can be specified by:

  • name - a color name, like "red"
  • RGB - an RGB value, like "rgb(255,0,0)"
  • Hex - a hex value, like "#ff0000"

In the example below, the h1, p, and div elements have different background colors:

Example

h1 {background-color:#6495ed;}
p {background-color:#e0ffff;}
div {background-color:#b0c4de;}

Try it yourself »


Background Image

The background-image property specifies an image to use as the background of an element.

By default, the image is repeated so it covers the entire element.

The background image for a page can be set like this:

Example

body {background-image:url('paper.gif');}

Try it yourself »

Below is an example of a bad combination of text and background image. The text is almost not readable:

Example

body {background-image:url('bgdesert.jpg');}

Try it yourself »


Background Image - Repeat Horizontally or Vertically

By default, the background-image property repeats an image both horizontally and vertically.

Some images should be repeated only horizontally or vertically, or they will look strange, like this: 

Example

body
{
background-image:url('gradient2.png');
}

Try it yourself »

If the image is repeated only horizontally (repeat-x), the background will look better:

Example

body
{
background-image:url('gradient2.png');
background-repeat:repeat-x;
}

Try it yourself »


Background Image - Set position and no-repeat

Remark When using a background image, use an image that does not disturb the text.

Showing the image only once is specified by the background-repeat property:

Example

body
{
background-image:url('img_tree.png');
background-repeat:no-repeat;
}

Try it yourself »

In the example above, the background image is shown in the same place as the text. We want to change the position of the image, so that it does not disturb the text too much.

The position of the image is specified by the background-position property:

Example

body
{
background-image:url('img_tree.png');
background-repeat:no-repeat;
background-position:right top;
}

Try it yourself »


Background - Shorthand property

As you can see from the examples above, there are many properties to consider when dealing with backgrounds.

To shorten the code, it is also possible to specify all the properties in one single property. This is called a shorthand property.

The shorthand property for background is simply "background":

Example

body {background:#ffffff url('img_tree.png') no-repeat right top;}

Try it yourself »

When using the shorthand property the order of the property values are:

  • background-color
  • background-image
  • background-repeat
  • background-attachment
  • background-position

It does not matter if one of the property values is missing, as long as the ones that are present are in this order.

This example uses more advanced CSS. Take a look: Advanced example


Examples

More Examples

How to set a fixed background image
This example demonstrates how to set a fixed background image. The image will not scroll with the rest of the page.


All CSS Background Properties

The number in the "CSS" column indicates in which CSS version the property is defined (CSS1 or CSS2).

Property Description Values CSS
background Sets all the background properties in one declaration background-color
background-image
background-repeat background-attachment background-position
inherit
1
background-attachment Sets whether a background image is fixed or scrolls with the rest of the page scroll
fixed
inherit
1
background-color Sets the background color of an element color-rgb
color-hex
color-name
transparent
inherit
1
background-image Sets the background image for an element url(URL)
none
inherit
1
background-position Sets the starting position of a background image left top
left center
left bottom
right top
right center
right bottom
center top
center center
center bottom
x% y%
xpos ypos
inherit
1
background-repeat Sets if/how a background image will be repeated repeat
repeat-x
repeat-y
no-repeat
inherit
1

« Previous Next Chapter »