I have a header-container with a background image, like so:
#header-container
{
background:url(../img/bg.jpg) repeat-x 0 0px;
margin:0px auto;
width:100%;
te
As animuson mentioned in a comment, it's more likely if you have a set min-width or just some content that expands the page over it's available borders.
There is an example of the second one: http://jsfiddle.net/kizu/3hLjv/
To fix the second one, you can make the wrapper to have width set by it's children, for example, you can use inline-block for this: http://jsfiddle.net/kizu/3hLjv/1/, if you have no wrapper, you can set this to BODY: http://jsfiddle.net/kizu/3hLjv/2/
And if you have some blocks with widths or min-widths greater than header's, just add the same min-width to header: http://jsfiddle.net/kizu/3hLjv/3/