Z zamiłowania tworzę strony internetowe. Moje teksty mają na celu opisanie
niektórych fragmentów internetu, którego ta strona jest częścią.
Konserwatywny, pewny siebie, niekonwencjonalny - to wady czy zalety? Sprawdź!
maciej łebkowski
Po pierwsze należy przestać myśleć w kategoriach: działa w IE, a w każdej innej przeglądarce nie. W rzeczywistości, w 95% przypadków jest dokładnie odwrotnie. Bardzo czesto jest też tak, że Microsoft wprowadził do swojej przeglądarki obsługę jakiegoś elementu, którego nie ma w HTMLu (sic!).
Co nalezy zrobić? Pisać zgodnie ze standardami. Pełne, dokładne i jednoznaczne opisy są dostępne po angielsku na stronie konsorcium W3. Nowoczesne przeglądarki przeważnie stosują się do standardów bardzo dokładnie, czego niestety nie można powiedzieć o oprogramowaniu monopolisty, który nie wprowadził poważniejszych zmian do swojego programu od ponad pięciu lat. Oczywiście to nie jest koniec.
Przeglądarki pracują w dwóch trybach: "quirks" i w trybie standardów. Quirks to określenie trybu, w którym niektóre elementy interpretowane są w sposób specyficzny dla przeglądarki. Rzecz jasna - każda z nich będzie miała inny "quirks" mode, dlatego pisanie bardziej zaawansowanych (choć nie tylko) stron w tym trybie będzie skutkowało dużymi rozbieżnościami pomiędzy każdą z przeglądarek. Tryb pracy można ustawić pośrednio przez ustawianie DTD, wiecej informacji można znaleźć u Henri`ego Sivonena.
Z tą wiedzą możemy zabrać się do projektowania. I jeśli jakaś przeglądarka już kategorycznie nie chce działać, można zastosować jeden z wielu hacków. Hacki to "luki" w przeglądarkach, przeważnie polegających na tym, że interpretuja jakiś kod, który powinny zignorować, lub odwrotnie. Dla Internet Explorera są to komentarze warunkowe, underscore hack, box model hack i wiele innych. Oczywiście takie przeglądarki jak Opera czy Firefox też mają jakieś swoje błędy, ale one przeważnie doskonale odwzorowują standardy, więc nie trzeba uciekać sie do takich sztuczek. Warto zapoznać się z listą hacków.
No ale są można zrobić inaczej, jeśli ma się na to ochotę. Browser sniffing czyli rozpoznawanie przeglądarki. W zależności od jej marki można generować różny kod strony. Jednak jest to zła praktyka i nie powinno się jej stosować.
Kolejną metodą jest wspieranie kampanii browsehappy. Został ostatnio utworzony specjalny skrypt działający tylko w IE, który informuje użytkownika, ze jego przeglądarka nie jest w stanie wyświetlić danej strony poprawnie. Więcej informacji na stronie infobar.