This is due to the fact that the width is applied to the elements relativeand fixedin different ways, depending on the container marginand the inherited properties of the parent style - according to their properties position, for example (as you might imagine) width.
- , CSS, *{margin:0; padding:0;}
body 8 (http://www.w3.org/TR/CSS2/sample.html),
header , top, left, right bottom ->, / , 90% , 10px 'body'.
top:0; left:0; header http://jsbin.com/ETAqADu/1/edit
.container, DIV block, relative, 90% , body ( 10 + 10 ( X))
: header 20 , .container, body.
: (body) , 0