Režim standardů IE7
Petr Weida informuje o článku na IEBlogu, který popisuje nakládání nadcházejícího Internet Explorer 7 s XHTML dokumenty.
Na podobné rozuzlení jsem relativně hodně čekal, už jsem o tom v jednom z minulých článků spekuloval.
Podpora odpovídajícího MIME typu se asi očekávat nedala, i Chris Wilson potvrzuje předpokládaný důvod – nutnost razantní změny jádra, které momentálně tým „není schopen“ – jsou jiné přednější věci a podpora by asi nebyla ideální.
Nakládání s prologem je ale důležité, neboť do nynějška i naprosto standardní dokument, avšak s XML prologem
<?xml version="##" encoding="##"?>
či prázdným řádkem před definicí !DOCTYPE způsobil v IE6 chybné vyhodnocení pro použití režimu zpětné kompatibility.
V souvislosti s předpokládaným správným chováním IE7 dle specifikací je tudíž nutné, aby i toto bylo opraveno a prohlížeč se následně choval stejně, jako ostatní. Jinak by byla možnost výskytu relativně nepředvídatelných kolizí, kdy by byl dokument renderován v tzv. quirks módu, tudíž by byl použit starý a špatný (slovy MS „zpětně kompatibilní“) model rámců, který byl opravován několika dalšími interpretačními či vykreslovacími problémy, ze kterých mohou být některé zcela či částečně opraveny.
Teď bude spíš potřeba doufat, že onen standardní režim bude mít minimum mušek, jinak se nám naopak pozice ještě ztíží, neboť si už pouze přidáním prologu nebudeme moci v IE vynutit režim zpětné kompatibility, bude použit režim standardů, ale zároveň se i ten bude chovat jinak (jako např. nyní v IE6).
Ideální situace by byla taková, že všelijaké „záplatování“ je potřeba provést pouze např. stylem podmíněných komentářů s omezením do IE6, aby se do stylopisu nemíchala pravidla, jejichž dopředné chování není známé či předvídatelné. Tudíž by IE7 dostal stylopis stejně korektní, jako ostatní moderní browsery, a měl by provést totožný výstup.
Uvidíme…
Pátek, 16. 9. 2005 16.50 | Trvalý odkaz | Trackback






[1] Jan Bien
Perfektní příspěvěk, Honzo, lépe bych to nenapsal. Podepisuji se pod to.
17. 9. 2005 14.59
[2] dannick
Hned jak jsem se dočetl o téhle změně s příchodem IE7, byl jsem si naprosto jistý že o tom napíšeš minimálně pár slov. Hlavně protože neznám možná nikoho jiného kromě tebe, kdo by „ladil“ weby primárně pro quirk mód a pro korektní zobrazení využíval chybu u které se dá očekávat že bude s příchodem nového IE odstraněna. Proto si myslím, že je lepší „vsadit na budoucnost“ se standard modem a zaříznout IE5+ než se snažit oblažit minimum uživatelů se starým prohlížečem. Je ale fakt, že jde vždy o kompromis.
21. 9. 2005 14.28
[3] Jan Brašna
[2] Já naopak málokdy vidím v IE6 standards mód. Dokud je nutnost (komerční) pro podporu IE5 a 5.5, tak je to ideální řešení. Nehledě na systémové (cond. comments) zpětné opravování, tedy omezené „mrtvou“ verzí, kde už se nic nezmění. A na budoucnost se vsází, IE7+ nedostává žádné „záplatování“, ale regulérní komplexní stylování jako Safari či Gecko.
22. 9. 2005 14.49
[4] dannick
[3] Co se týká standard modu v IE6 tak jej využívá „baj voko“ 75% webů, soudě podle Moderního Webu. Navíc deklarace <?xml version=„1.0“ encoding=„utf-8“?> která evidentně slouží k „přepnutí“ do quirku je vidět skoro jen u tvých webů. No a u těch výjimek kde xml deklarace použitá je, se primárně jedná jen o nutnost kvůli deklaraci kódování dokumentu. P.S. Srovnávám kvalitní webdesignery…
23. 9. 2005 12.05
[5] Jan Brašna
[4] To je celkem zajímavé, když jsem se na to dříve díval, tak tomu bylo povětšinou naopak. I přes to nevidím výhodu v používání pseudostandardního režimu, když i tak obsahuje mnoho chyb a stejně musí docházet k aplikaci různých oprav. Co se týče prologu, tak je uváděn proto, že by měl být – jen kvůli chybnému nakládání s ním v IE ho nebudu odstraňovat (je to podobné jako s XHTML MIME typem). Proto mě těší, že se toto IE7 opravuje.
23. 9. 2005 17.04
[6] dannick
[5] Nepřišel jsem se hádat, ale prolog musí být uveden jen u dokumentů s jiným kódováním než utf-8 nebo utf-16. Navíc je to celé úplně fuk, protože problém je v IE, který jen přidělává práci navíc a způsobů jak se s tím vypořádat je víc. Jen jsem poukazoval na to, že tvůj způsob je IMHO horší, protože tak jak ti to funguje v IE6 už to nemusí fungovat v IE7. Jak „zapneš“ Quirk když prologem to nepujde?
23. 9. 2005 19.16
[7] Jan Brašna
[6] No ale počkej, tady není důvod se hádat, jen osvětluji svůj postoj. Proč bych měl po IE7 vyžadovat quirk? V tom stále nevidím pointu. Všude jsou stylopisy s fixy pro IE5–6 připojeny jen do IE6. IE7 už dostane pouze a jen to, co ostatní browsery. Však přesně to je v článku napsáno. Proto ti tak trochu nerozumím.
24. 9. 2005 1.31
[8] dannick
Teď tomu už přestávám rozumět i já. Samozřejmě máš pravdu, jenom jde o to že „standardní“ mód musí v IE7 fungovat absolutně bez chyb, protože potom by vyvstal ten problém o kterém se tu už 3 dny bavíme. Navíc jsi to sám v článečku napsal. Představ si že by ten pseudo-standardní mód zůstal stejný, jen s rozdílem že prolog neovlivní jestli bude použit quirk. Katastrofa, ne?
25. 9. 2005 14.06
[9] Jan Brašna
[8] Tak si, prosím, přečti oba zalinkované články, jsou k sobě vztažené. Oprava volby renderovacího modelu jde pochopitelně ruku v ruce s opravou mnoha chyb jádra.
25. 9. 2005 17.00
[10] Václav Kutnohorský
<p>Já také používám prolog a to proto, že jsem ještě neviděl XML dokument, který by ho neměl (mimo XHTML). Nemá smysl ho na stránky nedávat jen proto, že si s tím MSIE 6.0 neumí poradit.</p>
26. 11. 2005 19.03