O tym, że IE to bardzo specyficzna przeglądarka, która ma swoje humory, nikogo zajmującego się tworzeniem w Sieci przekonywać chyba nie muszę.
Jeśli zaś chodzi o kota… dobre wytłumaczenie znajdziecie oczywiście w Wikipedii - Kot Schroedingera.
Co mają wspólnego te dwa, pozornie niezwiązane przypadki?
Chciałbym Was ostrzec przed czymś, co jest błahe a pozornie może kosztować Was opinię i pieniądze. Chodzi bowiem o to, że ze stronami w IE, w przypadku gdy serwer na którym dana strona stoi ma kiepski routing, jest właśnie jak z kotem. Raz są, raz ich nie ma. Nie, nie, inaczej - są i ich nie ma, w tym samym momencie.
Ta zmienność może objawiać się nie w pełni załadowaną grafiką (dość oczywiste do wytropienia) bądź znikającymi elementami. Ze szczerą lubością IE upodobał sobie znikanie stopek. To powinno zwrócić uwagę.
Popełniacie błąd, jeśli w tym momencie robicie podgląd źródła - Wy i Wasi klienci zobaczycie to samo - pełne źródło, ze wszystkim, nawet z elementami, których nie widać. Oczywisty wniosek: źle napisany kod? Nie.
Zanim klient rzuci w Was czymś ciężkim, warto rzucić okiem na drzewko DOM. I zapewne ku Waszemu zdziwieniu okaże się, że w drzewku brakuje fragmentów, które w kodzie HTML przecież są. IE nie renderuje fragmentów stron, do których nie ma pełnych danych (HTML/CSS), dlatego jeśli nie załaduje w pełni CSS (np zabraknie kilkunastu bajtów z końca pliku) to po prostu nie wyświetli obciętych elementów - w ogóle.
Możecie ten błąd zasymulować na dowolnym serwisie - wystarczy w momencie ładowania strony, np Wirtualnej Polski kliknąć “stop” w przeglądarce. Jeśli dobrze traficie, wyświetli się pół strony, mimo, że w podglądzie źródła będzie całość.
Jest to jeden z tych problemów, który może spędzić sen z powiek i na który nie znam dobrego rozwiązania, może z wyjątkiem optymalizacji kodu. Jeśli ktoś ma doświadczenia z tym problemem - a wierzę, że jest sporo takich osób, to chętnie poczytam.
Nazywam się Tomasz Staniak, zajmuję się prowadzeniem/tworzeniem projektów internetowych. Na blogu przeczytasz o tym, co mnie interesuje a także z czym jestem związany zawodowo.
One Response for "IE Schroedingera?"
[...] Już jest oficjalna, finalna wersja przeglądarki Microsoftu. Są taby, obsługa rssa i anti-phishing toolbar, podobno zwiększono też bezpieczeństwo związane z ActiveX. Na pewno poprawiono obsługę CSS co może kiedyś w przyszłości jak IE7 przejmie rynek IE6 może sprawić, że proces kodowania stron będzie przyjemniejszy. Wydanie oficjalnej wersji IE7 już teraz jest chyba uderzeniem wyprzedzającym wymierzonym w dwójkę FireFoxa, która ma zostać wydana na dniach. [...]
Leave a reply