То, что происходит, заключается в том, что div не расширяется, чтобы обернуть вокруг изображения, поскольку изображение имеет фиксированную ширину, а div - нет (и поэтому по умолчанию составляет 100% родительского элемента, то есть body / HTML в 100% области просмотра). Если вы посмотрите на него с помощью Firebug, то увидите, что изображение выходит за пределы div и его отступов.
Я настроил CSS в этом jsFiddle , чтобы фон расширялся до изображения. По крайней мере, вы должны начать. По сути, я добавил overflow-y: auto;
к div, что расширило фон.