Je peux déjà te dire que tu auras des soucis sur IE/Mac car il ne supporte pas les marges verticales négatives.
Ensuite au niveau strictement structurel, il est très curieux de placer ton footer en début de code HTML, ça ne va pas être très pratique pour les navigateurs non graphiques ou sans CSS.
De plus, le placement en position / bottom n'est pas implémenté de la même manière partout.
Je crois que le sélacteur universel (*) n'est pas compris de tous les navigateurs non-plus.
Sinon, inutile de mettre h1 en display:block, il l'est déjà par défaut.
A part ça, je ne vois pas trop ce qui peut clocher