Sam html ma błędy, powinien być poprawiony lub przepisany na nowo “zgodnie ze sztuką”… pierwszym lepszym jest div o id “header” występujący w dwóch miejscach (nie licząc tego, że cała zawartość strony się w jednym z nich zawiera), ale to nie jest -jeszcze- związane z problemem
Jakie relative? Nie używasz żadnego relative. Poczytaj sobie do czego służy pozycja relative. W przypadku wycentrowania stopki margin: 0 auto w stopce i tak samo w body. Ot co.
Skąd natomiast odstęp 3/4 cm na dole? Span wewnątrz stopki o klasie stopkatekst ma ustawiony margin-top na 0.2em, a tą samą co stopka wysokość 70px, czyli w efekcie zwiększa o 0.2em wysokość stopki. Tło stopki domyślnie wyrównane jest do góry i masz je ustawione na bez powtarzania, stąd na dole kawałek pustej przestrzeni. Usuń po prostu margin-top: 0.2em ze styli klasy stopkatekst. Choć z drugiej strony to jest element span, który domyślnie nie jest typu blokowego, więc nie powinien brać pod uwagę parametrów width i height. Spróbuj mimo wszydtko, według mnie powinno pomóc.
@Cyr4x, to co podałeś nie zadziała na tym “projekcie” strony, poza tym stopa jest centrowana do swojego rodzica (którym powinien być “container”, a jest jeden z elementów “header”, który też jest centrowany, choć przy takiej długości stopka powinna być poza oboma…).
A problem ze stopą leży w jej zawartości w ogóle i css dla jej całości powinien wyglądać np. w taki sposób (jeżeli nie dokona się poprawek w html):