O body e o html são coisas diferentes, o body so preenche até onde existir conteudo.