Każdy kto choć raz pisał stronę internetową wie jakie fochy potrafi strzelać nasz poczciwy Internet Explorer. Na jego poskromienie są  różne sposoby. Można stworzyć osobny arkusz stylów tylko dla wybranej przeglądarki. Wystarczy wtedy między <head> (…) </head> wsadzić taki kod:

<!–[if lte IE 6]><link rel=”stylesheet” type=”text/css” href=”ie.css” /><![endif]–>

Sprawi on oczywiście odczytywanie arkusza stylów pod nazwą ie.css tylko przez przeglądarkę Internet Explorer 6.  Wszystkie inne przeglądarki będą odczytywać podstawowy arkusz, który stworzyliśmy. Jest to według mnie najlepsze rozwiązanie dla tej przeglądarki, ale nie jedyne.

Można zrobić to wszystko w jednym arkuszu stylów ukrywając pewne reguły konkretnym przeglądarką i serwując im zupełne inne. Jest to o tyle niebezpieczne przy Internet Explorer w wersji 6, że wszystkie one będą przez validator CSS odczytywane jako błąd, i niespodziewanie mogą również przestać działać. Tabelkę prezentującą wszystkie te reguły stworzył Piotr Potera. Przykłady ich stosowania są przedstawione tutaj.

Jest to bardzo proste. Dla przykładu jeśli mamy taki styl, jak niżej, który w Firefoksie, Operze itd. działa poprawnie,

#div {
margin-left: 10px;
font: normal 12px “Arial”;
}

ale w IE6 niestety lewy margines rozsypuje nam stronę to możemy zastosować jedną z reguł by zaserwować IE zupełnie inny styl niż reszcie przeglądarek.

html* #div {
margin-left: 0px;
font: normal 12px “Arial”;
}

Musimy pamiętać jednak, że musimy powtórzyć styl i dopiero na jego kopii zrobić regułę dla IE, gdyż ta pierwsza musi pozostać w nie zmienionej formie dla reszty przeglądarek. Więcej reguł i przykładów także dla innych przeglądarek znajdziecie w linkach podanych wyżej.