IE9 ühilduvusvõimalused veebiarendajatele

Külalispostitus meie IE9 projektijuhi Roman Gorislavski sulest:

Internet Explorer 9 ühilduvusvõimalused veebiarendajatele

Iga järgmine Internet Exploreri (IE) versioon toob kaasa muutusi ja toetab aina uuemaid tehnoloogiaid, ent mõnikord soovivad arendajad endiselt jätkata varasemate versioonide käitumismalle. Veebiarendajad soovivad standardeid järgivat veebi, samu märgistuskeeli ning tagasiühilduvust olemasolevate lehtedega. Selleks on palju erinevaid tehnoloogiaid, mis lubavad seadistada seda, kuidas IE veebilehti jooksutab.

Veebilehitsejarežiim ja dokumendirežiim

Veebilehitsejarežiim määrab kindlaks, mis User-Agent (UA) stringi saadetakse serverisse. Dokumendirežiim seevastu määrab IE vaikimisi valiku ja selle, kuidas IE näeb tingivaid märkuseid (Conditional Comments). Vaikimisi on IE9 veebilehitsejarežiim määratud IE9-ks, IE8 oma vastavalt IE8-ks. Arendajal on võimalik muuta seda IE arendajate tööriistas „Browser Mode“ menüüelemendiga. Kasutaja saab seda muuta kui vajutab lehe külastamisel ühilduvusvaate nupule.

Internet Explorer 9 (IE9) Compatibility View ehk ühilduvusrežiimi nupp

On olemas ka Compatibility View nimekiri, mis viib automaatselt teatud veebilehed ühilduvusvaatesse.

Veebilehitsejarežiim

Kirjeldus

IE9

IE9 saadab UA stringi, versiooni vektori ja dokumendirežiimi, tegu on kõige standardsust järgivama režiimiga IE9-s.

IE9 Compatibility View

IE9 saadab UA stringi, versiooni vektori ja dokumendirežiimi vastavalt IE7 standarditele, aga UA string sisaldab lisaks veel Trident/5.0 token, mis näitab, et see on tegelikult IE9.

IE8

IE9 saadab UA stringi, versiooni vektori ja dokumendirežiimi vastavalt IE8 standarditele.

IE7

IE9 saadab UA stringi, versiooni vektori ja dokumendirežiimi vastavalt IE7 standarditele.

Dokumendirežiim määrab, mis režiimis kuvab Trident märgistusi nagu näiteks IE9 Standard režiimis. Dokumendirežiimi uuendamisel ei saada veebileht uuesti UA stringi ega küsi uusi märgistusi serverilt.

Dokumendirežiim

Kirjeldus

IE9 Standart

See on uusim standarti-järgiv käitumine IE9-s ja on vaikimisi määratud IE9-s, et kuvada veebilehte millel on strict või unknown dokumendi tüüp.

IE8 Standart

Käitub nagu IE8, kui kuvab veebilehte millel on strict või unknown dokumendi tüüp.

IE7 Standart

Käitub nagu IE7, kui kuvab veebilehte millel on strict või unknown dokumendi tüüp.

Quirks

Käitub nagu IE kui kuvab dokumendi ilma või Quirksi dokumenditüübiga. See sarnaneb IE5 ja Quirks režiimis oleva IE6, IE7 ja IE8 käitumisega.

Lisalugemist veebilehitseja- ja dokumendirežiimist leiab järgnevatelt lingilt:

Dokumendirežiimi muutmine oma veebilehel

Arendaja määrab isiklikult dokumendirežiimi, mida IE kasutab arendaja loodud veebilehe kuvamiseks. Vaikimisi IE9-s on dokumendirežiimiks IE9 Standard režiim. Selle muutmiseks tuleb kasutada dokumenditüüpi ja X-UA-Compatible metamärgistust või HTTP päist, et muuta seda siis vastavalt vajadustele. Samuti saab kasutada arendajate tööriistade menüüelementi „Document Mode:“, et näha milline dokumendirežiim kõige rohkem sobib.

Kui soovid muuta dokumendirežiimi ühe veebilehe jaoks, siis kasuta metamärgistust. Kui tahad tervet veebisaiti muuta, kasuta HTTP päist.

IE9 toetab kahte uut X-UA-Compatible väärtust lisaks sellele, mida IE8 juba toetas:

Metamärgistus või HTTP päis =

„IE=_________“

Kirjeldus

EmulateIE9

Ilma dokumendi tüübita või Quirksi dokumendi tüübiga lehed kuvatakse Quirks režiimis ja kõik teised kuvatakse IE9 Standard režiimis.

IE9

Kõik lehed kuvatakse IE9 Standard režiimis olenemata dokumenditüübist.

Microsoft soovitab veebiarendajatel kasutada dokumendi tüüpi ja mitte X-UA-Compatible metamärgistust või HTTP päist IE9 Standard režiimi jaoks. See aitab kaasa eesmärgile, kus veeb töötab ühtlasema standardipõhise märgistusega.

Kui sul on veebileht, mis põhineb IE7 tõlgendusel Standard režiimil, siis kasuta X-UA-Compatible metamärgistust või HTTP päist. Siin on näide, mis kombineerib väärtused nii, et IE8-s kuvatakse IE7 Standardses režiimis ja IE9-s veebileht kuvatakse IE9 Standardses režiimis:

IE8-s kuvatakse IE7 Standardses režiimis ja IE9-s veebileht kuvatakse IE9 Standardses režiimis

Panna saab ka mitmele lehele korraga HTTP päisele lisades natuke loogikat Apache ja IIS serveritel.

Selleks, et olla lähemal sihile „sama märgistus“, on veel väike muutus IE8-lt IE9-ni. Kõik iframes, mis asuvad veebilehel, kuvatakse IE9 Standard režiimis, peale Quirks režiimis olevaid iframe-e, mis omakorda kuvatakse Quirks režiimis.

Kuidas IE8 määrab kindlaks dokumendirežiimi ja see kuidas IE9 tuvastab dokumendirežiimi näitab diagramm (vaata svg või png formaati).

Lisalugemist metamärgisest ja HTTP-päisest: X-UA-Compatible metamärgend ja HTTP päis

Tuvasta võimalusi, mitte veebilehitsejaid (või hoidu tingitud märkustest)

Enamasti tahetakse, et veeb kasutaks standardipõhist märgistust nagu IE9 Standard režiim. Seetõttu soovitab Microsoft arendajatel kasutada võimaluse ja käitumise tuvastust (feature and behavior detection) ning mitte tuvastada spetsiifilist veebilehitsejat. Soovitame kasutada ühtset stiililehte, mis ühilduks nii IE9 kui ka teiste veebilehitsejate uusimate versioonidega nende standardrežiimis.

Jätkuvalt ei soovita me kasutada tingitud märkuseid (conditional comments). Erandiks on tagasiühilduvuse toetamine IE6 ja IE7 stiililehtedega.

Erandiks on tagasiühilduvuse toetamine IE6 ja IE7 stiililehtedega

IE9 jätkab tingitud märkuste toetamist, sest soovime jätkuvalt toetada olemasolevate saitide tagasiühilduvust.

Lisalugemist tingitud märkustest leiad siit lehelt (Conditional Comments).

Comments

  • Anonymous
    January 20, 2011
    Meid huvitas see ka, kas IE hakkab toetama WebGL'i kuid leidsin veebist artikli, mis ütleb, et ei saa.

  • Anonymous
    January 20, 2011
    IE9 antud hetkel ei hakka toetama WebGL, kuna rõhk oli pandud 2D graafika korreksele ja GPU abil kiirendatud kuvamisele ja see oleks olnud ebarealistlik lisada seda antud arenguetapis.