Нет. Вот здесь как раз все правильно. Это к вопросу про коллапс марджинов. Суть в том, что если у родителя стоят padding или border (не none), тогда поле не будет выходить за родителя. В моем примере как раз есть второй элемент (wrapper который). Я его специально создал, потому что он как раз ведет себя как надо. А body, как мне казалось, нет. Если у .wrapper убрать overflow, то видно, что заголовок вверх поднимется, а поля просто выйдут за границы. Просто в случае с body элемент на самом верху, поэтому создается такой эффект. Фактически заголовок съезжает вниз, но при этом сам body возвращается на освободившееся место. http://www.w3.org/TR/CSS21/box.html#collapsing-margins