Since I posted the huge collection of Large Background Websites, I received several email requests on how to make a large background site with CSS. So, I thought it would be a good idea to share my techniques on designing large background websites. In this tutorial, I will provide various CSS examples on how you can create a large background site using either a single or double images.
Common Mistake: Background Gets Cropped (see demo)
Take a look at the demo file, it looks fine under 1280px. But if you have a high resolution display, you will see the background gets cut off on the sides.

Example #1: Single Image (see demo)
A quick solution to fix the problem mentioned earlier: make the edge of the image the same color as the BODY background color. Here, I'm going to use Web Designer Wall as an example. Take a look at the image below and notice the edge is a solid color?

CSS Part
The CSS part is very simple. Specify the background image (position it center, top) for the BODY element.

Here is the CSS code:
body {
padding: 0;
margin: 0;
background: #f8f7e5 url(wdw-bg.jpg) no-repeat center top;
width: 100%;
display: table;
}
Notice there are two extra lines in the BODY selector. That is to prevent the background image from shifting when you resize the browser smaller than the content width (it happens in Firefox).

Example #2: Double Images (see demo)
For this example, I'm going to use the job board design, Design Jobs on the Wall. I have a cork board pattern repeating in the BODY tag and a wrapper background in the center.

The trick here is to export the GIF matte with a brown color that is similar to the cork board pattern.

Example #3: Sky Background (see demo)
In this example, I have a 1px gradient that is repeated horizontally for the BODY tag. Then I attached a cloud background in the center of the #wrapper tag.

Update: Sky Background Using HTML Selector (see demo)
Thanks to the comments from the readers. Below is an example of the sky background using HTML selector to display the gradient background, so the #wrapper DIV tag is not required. It is a much more cleaner approach.

Download the demo zip now and don't forget to check out the Large Background Websites.
Credits: thanks to Alex from markup4u.com for the {width: 100%; display: table} CSS trick.
very nice tutorial, a smaller background with center/top position can make your website to load faster.
Thanks for this great tutorial. I especially benefited from “width:100%; display:table;” Good to know!
Thx ALOT!!! Had a huge prob when i centered the background in css. Some of the background dissapeared in the top. This solved it ! Thx :)
good
Thx a lot, couldn´t figure it out myself.
thanks a lot! great tutorial
This is a very good article. Everyone else do wrong things, but this article is showing people how to do things right.
Do ***NOT*** cheap-o-scale your bacground-image. It’s ugly, it’s pixellated and it makes the browser sluggish.
Instead use the examples provided in this article; it’s the right way to do it, and your Web-site will get a professional touch.
I love you!! Thank you for sharing your knowledge!!
I havent even used CSS before and decided I would try it based on this tutorial. It was simple and very easy to do. Well done.
I just wanted to say thanks for explaining how that was done, I have been baffled.
whoah this weblog is excellent i like reading your posts. Stay up the great paintings! You know, many individuals are hunting round for this information, you could aid them greatly.
Hi Nick,
i love your posts. They are usefull! Please, can you tell me what do you think about premade buyable css templates like on http://www.titantemplates.com ?
Thank you
Jony
Hi! I like your post! Could you please help me to find the brown image for 2nd Example? Thank you! Agatha
thanks,This tutorial let I learned a lot !
bitch nigga
I am stuck with this problem, hope you would have a solution!
My design can be sliced in 3 parts, header, body and footer!
Thought the content of Header is about 150px, the sliced image with the design will take about 800px! But then I want the body image following it, but since the body content just starts after 150px, not sure how to tweak in the code! :(
Site: http://wp.cfci.org.in/
How do you make the background to be whatever you want but the content that is the writing area is always white. How did the background not overlay it??
The CSS part is very simple. Specify the background image to use large Background using css.
http://www.handycss.com/how/how-to-use-large-background-using-css/
Thank you Thank you!! This is organized very nicely
nice 1:)