Nie rób żadnego position: absolute, ani niczego takiego. Kodowanie layoutu -- i w ogóle jakiekolwiek kodowanie -- nigdy nie powinno polegać na wpisywaniu losowych komend i posiadaniu nadziei, że zadziała. A jak zadziała, to nie ruszać, bo się zepsuje ;).
Nie używaj atrybutu style, tylko zewnętrznego arkusza stylów CSS. Plik CSS dołączamy w elemencie <head>, korzystając z elementu <link>.
W pliku ze stylami zrób dwie rzeczy:
- Wyśrodkuj element body w ten sposób:
body {
margin: 0 auto;
width: 746px; /* szerokość, jaką ma mieć wyśrodkowana część strony */
}
Dzięki temu cała zawartość strony będzie wyśrodkowana.
- Ustaw tło w elemencie HTML. Obrazek tła niech będzie u góry i niech ma repeat-x:
html {
background: url('img/1x00.png') repeat-x left top; /* ustaw odpowiednio ścieżkę; tę wziąłem z Twojego kodu */
/* ^^ możesz też zechcieć ustawić kolor tła, np. dodając #56BCFE przed url(...) */
}
W sumie więc robisz coś takiego:
Całość obszaru graficznego strony zawarta jest w elemencie <html>. Jest on rozciągnięty na całe okno przeglądarki. U góry ustawiasz szeroki na 1 piksel (lub więcej, żeby przeglądarka nie musiała kafelkować) pasek z gradientem i powtarzasz go w poziomie, dzięki czemu sięga od lewej do prawej, przez całe okno przeglądarki.
Następnie, wewnątrz elementu <html> jest element <body>, zawierający właściwą treść strony. Wyśrodkowujesz ten element nadając szerokość i nadając poziomym marginesom (lewemu i prawemu) wartość auto.
To wszystko. Możesz wywalić wszelkie dodatkowe divy itp., których używałeś do tła.
Uwag o kodzie, który zamieściłeś mogę powiedzieć wiele, ale masz tu jeszcze jedną, na dobry początek: używanie atrybutów onmouseover itd. jest generalnie niezbyt dobrą praktyką, miesza warstwy zachowania (JavaScript) i struktury (HTML). Skrypty mogą same się dołączać. Ale jeśli już używasz atrybutów, to pisz je małymi literami. W HTML-u nie ma to znaczenia, ale w XHTML-u ma. Tam wielkość liter się liczy, a atrybuty są zdefiniowane jako mające tylko małe litery. Więc nie onMouseOver tylko onmouseover. Wiem, że to pierwsze jest ładniejsze, ale -- formalnie rzecz biorąc -- nie wolno tego używać i przeglądarka ma prawo udawać, że tego nie widzi. Ponieważ wielu koderów jest na tyle nieogarniętych, że tego nie wie, przeglądarki tolerują nawet niepoprawne wielkości liter. Szczególnie gdy podajesz XHTML w zasadzie jako HTML z błędami, a zapewne tak właśnie robisz (zależy to od ustawień serwera).