Komentarze warunkowe dla IE Drukuj
Ocena użytkowników: / 1
SłabyŚwietny 
Wpisany przez Patryk yarpo Jar   
piątek, 23 lipca 2010 18:38

Internet Explorer nie jest moja ulubiona przeglądarką, i to niezależnie od tego, o której wersji mówimy. Głównie dlatego, że jest bardzo "swoista". Sami autorzy tego programu wiedzą o tym (czasem chyba nawet się tym szczycą) i pozwalają developerom na specjalne hacki.

IE lubi coś robić inaczej. Jednak - co dobre - większość z jego dziwactw jest stała. tzn. za każdym razem działa w ten sam - błędny - sposób. Dzięki temu można stwierdzić: "Ej, zaraz! Jakbym tylko mógł zrobić osobny kod dla IE!". Odpowiedź: "Możesz!".

 

Kod widziany tylko dla IE

<html>
    <body>
        <!--[if IE]>To będzie widoczne tylko w przeglądarkach z rodziny IE<![endif]-->
    </body>
</html>

	

Możesz spróbować. Powyższy kod nie będzie widoczny w przeglądarkach*. Natomiast w każdej przeglądarce producentów Windowsa, zostanie wyświetlony tekst. Oczywiście można tam wyświetlić np. coś takiego:

<html>
    <body>
        <!--[if IE]>
        <script type="text/javascript">
            window.location = 'http://www.firefox.pl';        
        </script>
        <![endif]-->
    </body>
</html>

	

Ot, taki żarcik :). Cześciej jednak stosuje się to do wykonywania użyteczniejszych fragmentów kodu, jak np. kanał alpha w png czy załączenie specjalnego arkusza stylów css.

 

Rozpoznawanie wersji

Komentarze warunkowe potrafią tez być przydane, gdy chcemy zrobić coś jedynie dla konkretnej wersji IE.

	<!--[if IE 6.0]>
    Internet Explorer 6.0
<![endif]-->

<!--[if IE 6]>
    Internet Explorer 6.0
<![endif]-->

<!--[if IE 5.5]>
    Internet Explorer 5.5
<![endif]-->

<!--[if !IE 8]>
    Internet Explorer w innej wersji niż 8
<![endif]-->

<!--[if lte IE 6]>
    Internet Explorer 6 i wcześniejsze wersje (less than or equal, czyli =< )
<![endif]-->

<!--[if gt IE 8]>
    Internet Explorer 8 i nowsze (greater than, czyli >)
<![endif]-->
	

		

Tym sposobem IE, a wszeczgólności IE 6 jest mniej straszny. Choć oczywiście istnieje wiele sposób mniej "inwazyjnych". Warto pogooglować. ten jest za to najprostszym i najpewniejszym spośród wszystkich mi znanych hacków.

--
IE wcześniejsze niż 7, trudno dzisiaj w ogóle nazwac przeglądarką ;)

Zobacz podobne artykuły