Header

This solution separate header, footer and body. The has a great flexibility because the content will expand to accomodate the size of content. Also, this solution has more html code and most of the time, they are just for header and footer background images. Also, you can't have gradient background because the body is tiled.

Method 1: Big background image
Method 2: Header, Body and Footer
Method 3: Header and Body
Method 4: Pure CSS3
Method 5: Pure CSS3 with Multi Background