przez Wydra707 » 25 maja 2004, o 13:33
No, to zmienia postać rzeczy. Faktycznie to rozwiązanie ma pewne wady. Wymaga zmiany kodu przy zmianach wymiarów DIV-a. Wystąpią brzydkie efekty (paski przewijania) jeśli wysokość "strony" będzie większa od połowy wysokości obszaru roboczego okna (a już zupełna katastrofa jeśli strona będzie większa od wnętrza okna). Ale w sumie to całkiem pomysłowe rozwiązanie dla niewielkich elementów. Czego to ludziska nie wymyślą aby uciec od tabelki... Albo Explorera ;-) Wydaje mi się też, że ten zewnętrzny DIV nie musi mieć deklarowanej wysokości 1px, bo i tak jest rozciągany.
A tu zautomatyzowane rozwiÄ…zanie dla MSIE:
<DIV STYLE="position:absolute; top:expression(Math.max(0,(document.body.clientHeight-this.offsetHeight)/2)+'px'); background:#ffff00;">Tutaj treść o dowolnej wysokości</DIV>
Ten DIV będzie wycentrowany w pionie niezależnie od swoich wymiarów. Centrowanie zostanie zamienione na wyrównywanie do góry jeśli wymiary wnętrza okna będą za małe. Korzystam z tego w trybie zgodnym z poprzednimi modelami IE (który ja nazywam "starym"). Jak większość wygodnych rozwiązań, i to jest raczej niezgodne ze standardami, których chcecie się trzymać.
Pozdrawiam
Paweł Rajewski