Google právě přišel s kuriozitkou nazvanou Google Chrome Frame. O co jde? Po jejím nainstalování vám v systému stále zůstane prohlížeč Internet Explorer, ovšem bude schopen používat jádro z Google Chrome (tedy WebKit). Ostatně od toho je odvozen název pluginu Chrome Frame, čili frame, který uvnitř využívá Chrome.
Uživatelé tak budou stále používat prohlížeč, na který jsou zvyklí, ovšem jádro bude jiné. Změny z pohledu uživatele nejsou velké a je tu šance, že si jich nevšimne.
[youtube sjW0Bchdj-w]
Po instalaci pluginu Chrome Frame se IE chová stejně jako před tím. Beze změny. Staré intranetové stránky optimalizované pro IE tedy i nadále fungují. Jediné, co se přidá, je klíčové slovo „chromeframe“, které se objeví v UA-stringu.
Ke změně ale dojde při návštěvě stránky obsahující:
<meta http-equiv="X-UA-Compatible" content="chrome=1">
Toto značení jistě znáte, pokud se zabýváte přepínáním zobrazovacích módů v IE8. V takovém případě bude k zobrazení použit WebKit z Google Chrome. Pokud tedy stránka používá něco, co IE nemá (některé novinky z HTML5, rychlý JavaScript atd.), může si její autor přepnutí vynutit.
V nouzovém případě může přepnutí vynutit i administrátor koncového počítače pomocí zápisu vybraných URL do registru – viz Google Frame Developer's Guide. Google ovšem tento způsob nedoporučuje.
Jak jste již nejspíš pochopili, Google Frame není všespasitelný. Uživatelé budou nadále používat IE s jeho původním jádrem. Google Frame se ale dobře hodí, např. pokud potřebujete u vás ve firmě zprovoznit novou aplikaci, ve které používáte některé standardizační novinky (ať už se jedná o HTML5, CSS3 nebo něco jiného). V takovém případě postačí uživatelům nainstalovat Google Frame, do vaší aplikace nastavit příslušnou hlavičku a máte vystaráno. Uživatelům bude fungovat jak vaše nová aplikace, tak i všechny stránky, které dosud používali. Jistě vás napadnou i další případy využití.
Psal jsem, že uživatel si změny jádra prohlížeče nemusí všimnout, ale může. Jak je to možné? Obecně všechny záměny jader prohlížečů, co jsem zatím kdy viděl, trpěly problémem kontextového menu. Chrome Frame není výjimkou. Pokud je uživatel zvyklý používat při ovládání kontextové menu (menu, které se objeví při stisknutí pravého myšítka), patrně nebude spokojen.
Na stránkách, které budou používat Google Frame, bude kontextové menu vycházet z Google Chrome a nebude obsahovat IE specifické věci, jako jsou např. akcelerátory. Podobně to platí pro veškeré interaktivní ovládání, ať už se jedná o výstrižky (web slices), zobrazování alt popisků atd.
Nejsem si jistý, jak se bude chovat Private Browsing. Příliš nevěřím tomu, že bude správně fungovat, ale kdo ví.
Poslední poznámka je trochu pedantská. Nelíbí se mi označení chrome=1 použité k přepnutí jádra. Je to nekonzistentní rozšíření toho, co Microsoft zavedl. Na pravé straně nemá být logická jednička, ale číslo verze – v případě Chrome Frame tedy čtyřka. Pokud se X-UA-Compatible neujme, bude to jedno, ale kdyby se X-UA-Compatible nedejbože snad někdy ujal i u dalších prohlížečů, vnese to zbytečný chaos. (Ano takovýmito zdánlivými drobnosti vznikají dlouhodobé nekonzistence Webu, které po letech už nikdo nedokáže vyřešit.)
Ač to nemusí být na první pohled jasné, Google Chrome Frame je víceméně klasická instalace prohlížeče Google Chrome, která navíc obsahuje onen plugin Chrome Frame. Nedivil bych se, kdyby se do budoucna stal součástí každé instalace Google Chrome. A ani bych se nedivil, kdyby totéž udělaly i další prohlížeče.
Minimální. Pro pár vývojářů bude samozřejmě neocenitelnou spásou a možná jejich posledním argumentem k přesvědčení nadřízených/managerů/odběratelů pro použití moderních webových technologií v jejich aplikaci. Obzvláště spolu s tím, že Google připravil skript, který uživatelům IE automaticky instalaci Chrome Frame nabídne. Ale to budou ojedinělé případy. Na celkovou bilanci mezi prohlížeči bude mít zanedbatelný podíl.
To je vše a pokud vás Chrome Frame zaujal, můžete ho rovnou vyzkoušet.
Autora tohoto blogu najdete na LinkedIn, Facebooku i Twitteru. Je také autorem jediného českého blogu o vývoji (X)HTML.
Nekonzistence webu tu byly jsou a budou. Podle mě jsou dokonce žádoucí, protože podstatně urychlují vývoj webu, prostě co se ujme to se ujme (viz čas mezi přijetím HTML 3 a HTML 4 a mezi přijetím HTML 4 a HTML 5).
Jako blbost vidím zavedení tagu pro označení prohlížeče, pro který byla daná HTML stránka optimalizovaná. Podle mě je lepší řešení stránky napsat tak, aby podle user-agent hlavičky posílal server příslušně modifikovanou stánku optimalizovanou pro daný prohlížeč. Já to tak dělám, protože například prohlížeče s jádrem Gecko umějí pomocí JavaScriptu zjistit šířku a výšku zobrazované části dokumentu (document.width a document.height), což ostatní prohlížeče neumí, takže pro Gecko můžu generovat stránky, které umí pomocí JavaScriptu nastavit velikost náhledů ve fotogalerii. IE má zase problémy se zobrazováním některých znaků ve fontu Georgia, který používám jako standardní font při zobrazení na Windows (v CSS mám definováno font-family: Georgia, Helvetica, Arial, sans-serif;), takže pro IE používám Ariel. Konqueror má zase problémy při zobrazení některých znaků ve fontu Helvetica, který používám jako standardní na Linuxu, takže pro Konqueror používám přímo sans-serif.
Jinak podle mě nejlepší je používat nová rozšíření nebo rozšíření HTML tagů s rozumem, čili tak, aby jejich případná nefunkčnost neovlivnila dostupnost stránky.
Co se týká firemních aplikací, tam je to skoro jedno, protože tvůjce firemní aplikace by měl dodržovat firemní požadavky a omezení.
No nevím, když si teoreticky představím, že by byla penetrace CF podobná jako u Flash Playeru, bude to mít naopak pro webové vývojáře dost dramatické dopady. Momentálně je samozřejmě přínos minimální, stejně jako u každé technologie s tržním podílem nula nula nic.
Jinak k tomu číslu verze: kdyby tam byla čtyřka, doporučil bys všem webovým vývojářům, aby toto číslo povýšili na pětku, až za pár měsíců Google vydá novou verzi Chrome? A pak znovu a znovu? Když tam čtyřku necháš, bude časem zastaralá a tedy v principu ne lepší než jednička. Proto tam podle mě dali jedničku - nemyslím, že je "logickou jedničkou", ale spíš nějakým číslem verze, které asi nemá žádný velký smysl, protože ho ani nepotřebuje.
Jinak za sebe si myslím, že z dlouhodobého pohledu je Frame veledůležitým počinem, který bude mít na web hodně velký dopad.
@VfB Jenže technický pohled v tomhle případě nehraje roli - tady je cílem uživatel a pokud mu cokoliv začne fungovat jinak (včetně oněch altů), je to v téhle specifické situaci prostě krok zpět, ať již byl veden směrem k standardům či nikoliv. "Jakto, že to nejede? Před instalací tohodle Frame mi to vždy fungovalo!"
@onyx Pozor, je rozdíl mezi progresivním vývojem a obyčejným lajdáctvím. BTW Jak to prosím souvisí s rozdílem HTML 3-4 a 4-5?
@Borek S tím Flashem. Ano kdyby bylo Google Chrome Frame rozšířeno na 99% strojů jako Flash, budou i mé závěry jiné. Jenže ono v takovém případě by i penetrace Google Chrome byla 99% (on ten Frame je jen taková atypická instalace Google Chrome!) a v tom případě by Google řešil úplně jiné věci - měl by 99% dominantu na trhu prohlížečů, o jaké se dnes může všem jenom zdát (včetně Microsoftu!). Myslím, že to jsi se ale už pustil spíš na pole sci-fi 8-)
@Borek S tou čtyřkou to možná není tak jasné. Ona by se v již hotových stránkách přeci neměnila - zpětná kompatibilita na webu není problém, naopak by to zpětné kompatibilitě pomohlo, kdyby ty nové stránky měly pětku, pro kteoru byly udělány. Ono je tady obecná otázka, zda celé X-UA-Compatible bude pro web prospěšné, nebo to bude jednou jeden velký průšvih. Já se bojím spíš toho druhého a jakékoliv rozmazávání to ještě zhorší, obzvláště pokud k němu budou jednotliví vendors přistupovat naprosto odlišně, jak to právě teď předvedl Google, to je cesta do pekel.
@Borek Zda z dlouhodobého pohledu bude Frame důležitý nebo ne se víc hádat nechci, to by bylo nekonečné a v tuhle chvíli i zbytečné. Můžeme si za pět v hospodě potvrdit, kdo měl pravdu. Zvu tě! 8-)
Mezi Chrome a Chrome Frame je z hlediska uživatele propastný rozdíl. U Chrome je samozřejmě 99% penetrace naprosto nereálná, ale z toho nelze implikovat, že by musela být nereálná i u pluginu. To, že jsou obě technologie interně v podstatě totožné, je irelevantní.
Představ si, že jako uživatel navštívím někdy v roce 2010 web Google Wave. Protože mám v té době archaický IE7, web mi v prvním případě napíše "používáte zastaralý prohlížeč, prosím přejděte na Google Chrome". V takovém případě se otočím a rychle prchnu pryč. Pokud však stránka řekne, "klikněte zde, za pár sekund bude váš prohlížeč připravený ke spuštění Google Wave", je vysoká šance, že kliknu.
To je důvod, proč si myslím, že Frame má velkou budoucnost. Není moc důvodů, proč by neměl uspět.
@Borek Ano, mezi tím je rozdíl, ale jen v rétorice. Uživateli byl sice nabídnut Google Frame, ale ve skutečnosti si nainstaloval Chrome, jen pod jiným názvem. Už zbývá jen zařídit, aby ten Chrome na jeho počítači neležel zbytečně a nějak upoutal jeho pozornost. Zajímalo by mě, zda tenhle poslední krok mají v Googlu už teď vymyšlený nebo ho nechávají na později.
BTW Přesně takhle fungoval (funguje) OpenDocument filtr od Sunu do MS Office. Nebylo to nic jiného, než upravená instalace OpenOffice.org. Ono je těžké přesvědčit uživatele, aby si nainstaloval nový Office, tak to v SUNu dokázali naroubovat jako importní/exportní filtr do MS Office a pod tím názvem to distribuují. Stejná myšlenka, jako s Frame - nějaký malý filtr si přeci lidé nainstalují, aby ten dokument otevřeli. Tuším je to venku možná už 2 roky a zatím žádný významný dopad nevidím. U Googlu by výsledek mohl být malinko lepší (o spuštění Wave bude větší zájem než o otevření ODF dokumentu), tj. aspoň trochu měřitelný, ale to je tak všechno.
Pozor, zájmem Sunu bylo, aby uživatelé přešli od jednoho produktu k druhému (od MS Office k OpenOffice.org). Google takové ambice vůbec nemá - pro něj je důležité, aby se kupředu hýbaly webové technologie, a je mu jedno, jestli se uživateli budou jeho služby zobrazovat v prohlížeči A nebo B. Chrome je pro Google prostředkem, nikoliv cílem.
Já bych si v tuhle chvíli vůbec netroufal říkat, co je pro Google důležité nebo odhadovat, co pro něj bude důležité za 5 let. Jeho chování je tak trochu zmatečné a pro mě moc nepředvídatelné. A obzvláště u marketingu, který Google vedl okolo Chrome se pro mě ukazovalo, že Googlu ani nedá tak moc věřit, některé jeho metody se mi vůbec nelíbily.
[2] Otázkou je, co je lajdáctví. Ono na nekonzistenci webu má docela velký podíl samotné W3C, když přijímalo standardy, které byly přesně obráceně, než co se v době, kdy tyto standardy byly schváleny, používalo, typickým příkladem je onen proklínaný box-model. V době, kdy majoritní prohlížeče používaly stejný box-model a byly pro něj vyvíjeny i stránky, W3C prostě dalo do standardu box-model jiný, čímž začal letoucí průšvih okolo tohohle. Netscape pak zanikl, IE nikoliv, takže pořád ve vzduchu visela otázka, zda přejít na standardizovaný box-model a rozhodit tím 90% webu nebo zůstat i přesto, že to není standard. Těžko říct, jestli je to lajdáctví, či nikoliv. Pro Mozillu to nebyl problém, protože ta vznikla znova v podstatě z nuly. Pamatuju dobu, kdy se obrázky z JavaScriptu ovládali za pomoci jejich pojmenování pomocí atributu NAME v tagu IMG. Je podpora tohoto způsobu v dnešních prohlížečích, i když to není ve standardu lajdáctví?
Další nekonzistence je třeba výraz expression v css u IE. Umí docela hodně věcí, ale nepovedlo se ho standardizovat. A teď se s velkou slávou W3C snaží do CSS dostat výraz calc, který by měl umožnit sčítání jednotek.
Další věcí, která podle mě škodí webu, je absolutní pozicování v CSS. Snaha o absolutní pozicování vzhledem k relativně umístěnému prvku skončí neúspěchem. takže dneska jsme svědky stejně širokých stránek nezávisle na šírce okna, když je okno menší než šírka stránky, objeví se posuvník, když je větší, objeví se na okraji pruhy. Běžně to tak absurně nevypadá, dokud člověk takovou stránku neuvidí na 19" monitoru s velkým rozlišením - úzký sloupec, který má po stranách obludně široké pruhy, pomalu širší než vlastní stránka. Proč třeba v takových případech místo jedné jednosloupcové stránky nezobrazovat dva nebo tři sloupce vedle sebe. Jednoduše proto, že HTML ani CSS do neumí,zatímco tabulky to uměly, ale za použití tabulek člověk dneska akorát sklidí kritiku.
Je podopora vlastností document.width a document.height lajdáctví nebo progresívní vývoj?
Ten progresívní vývoj podle mě skončil právě s HTML 4.
[1] Co je špatného na zobrazení ALTu, pokud není přítomný atribut TITLE. Dokonce tuším, že tohle vzniklo v době, kdy se atribut TITLE ještě nepoužíval, takže podle mě je to spíš vlasnost než chyba. Navíc IE, co jsem zkoušel, pokud je přítomný jak ALT tak TITLE, zobrazí právě ten TITLE. To, že weboví vývojáři nedodržují standardy protože jsou zvyklí na něco jiného, je jinej problém.
Jinak co se týká toho ALTu, můj názor je, že tak jak to je ve standardu, čili povinný ALT, je blbost, stejně jako to dělají čtečky.
Tuším, že situace je taková, že pokud je atribut ALT přítomný, tak se přečte jeho obsah, pokud ne, přečte se název souboru, tudíž u čistě dekorativních obrázků musí být uvedeno ALT="". Podle mě by bylo logičtější, že pokud by ALT nebyl přítomný, tak by čtečky nečetly nic. A pokud by někdo chtěl přečíst název souboru, tak by to prostě do toho ALTu napsal.
[7] Jak víš, že zájmem Googlu není, aby lidé přešli na jeho prohlížeč? Proč by si teda dával práci s Chrome? Myslím, že pleteš. Googlu, stejně jako Sunu, nebo Microsoftu, jde v první řadě o prachy. A právě webové technologie jsou k tomu prostředkem. Osobně se bojím Chrome nainstalovat, už z principu, že tím, kdo za ním stojí, je firma na shromažďování informací. Jenom ten našeptávač, který tam je a který během toho, co píšeš, odesílá dotazy Googlu, toho o uživateli hodně napoví a o to jde především. Takže podle mě naopak má Google ten největší zájem na tom, aby se používal právě Chrome.
V podstatě Google je to samé, co Microsoft, jediný rozdíl mezi těmito firmami je, že MS protlačuje svoje produkty, zatímco Google protlačuje produky založené na OpenSource.
Docela doporučuju k přečtení knihu Planeta Google, a začíst se do kapitoly o Google Knol, což je projekt který se Googlu moc nepovedl. A třeba tě pak na hodného strýčka Googla změníš názor.
[0] PS: Sorry za delší reakci, ale mě to prostě nedalo.
Ještě dva zajímavé zdroje:
O problémech Chrome Frame s přístupností: http://www.paciellogroup.com/blog/?p=444
a Jak je Chrome Frame implementován: http://jimray.tumblr.com/post/194793633/more-technical-details-about-google-chrome-frame
[15] v IE to možné je snáď už od IE 3. MS web engine je v podstate jeden uzavretý COM objekt IWebBrowser, ktorý je možné vložiť do vlastnej aplikácie. Ten nemá žiadne UI, ak nerátam kontextové menu, ktoré sa ale dá prerobiť, alebo nahradiť vlastným, alebo komplet odstrániť. IE je v podstate len malá aplikácia, ktorá sa stará o toolbary, taby, atď.
Souhlasím s Borkem, je pouze otázkou času, kdy se všichni na IE vykašlou. Až ten den prijde, nikdo si toho už ani nevšimne. Vse je otazkou sluzeb a obsahu. Diky youtube maji vsichni flash. Možná diky google wave budou mit vsichni chrome frame. Rad bych se za tech pet let s vami v hospode sešel :)
@onyx - souhlas s Martinem, váš monstrózní komentář jsem hned odskroloval
@Rado2 On IE to měl jen napůl - má embedovatelné jádro. Druhý směr - embedovat cizí jádro je u něj poměrně komplikovaný a nebyl pravděpodobně nijak zamýšlen (že se to Chrome Frame povedlo je otázka geniality vývojářů a štěstí). A navíc to embedování, které Trident nabízí by nebylo bez podobných problémů, které jsem popsal u Chrome Frame výše - proto píšu, že to zatím není dost možné.
@daniel S YouTube to je nepřesné. Flash byl už před tím rozšířen u majority uživatelů, Youtube to jen dotáhlo a (hlavně) prosadilo dominantní video formát na webu, čímž Flash konečně dostal bezkonkurenční smysl, ale o rozšíření Flashe bylo do velké míry rozhodnuto už před tím.
Wave a Frame tuhle cestu nekopírují, a proto u nich ten model nemusí fungovat stejně. Nehledě k tomu, že po těch pár měsících používání Wave si nemyslím, že bude mít raketový úspěch srovnatelný s Youtube. Je to moc hezká věc, ale takový boom pro běžné uživatele to podle mě zase nebude.
A ostatně i s IE je to nepřesné - dnes už důvody, proč od něj odcházet, ubývají. Je spíš otázkou času, kdy MS přijde na to, jak zase zvednout jeho podíl. Zatím neví jak, ale pořád to zkouší a jednou na to přijdou (až zjistíme, jak se do toho má správně třísknout... 8-).
[20] existoval aj projekt nahradenia IE jadra mozillou v aplikáciách, ktoré používajú IE jadro tak, ze mozillu wrapli do COM objektu. Teoreticky by to fungovalo aj v internet exploreri, len problém je, že to nedotiahli do konca a neimplementovali všetky interfacy.
http://www.iol.ie/~locka/mozilla/mozilla.htm
Možné to ale je, IE má cez com spravenú modularitu dosť dobre, aj na skriptovanie, prácu so sieťou, a pod. používa ďalšie moduly cez com, ktoré sa dajú implementovať vlastné, alebo používať len časti. Napr. neni problém použiť len JS engine v projekte, ktorý nemá nič spoločné s HTML, a to bez nejakej kompilácie knižníc.
Rád by som vedel, či sa dá takto využiť aj inštalovaný firefox vo vlastnom programe bez toho, aby som do neho musel kompilovať nejaké knižnice, resp. celé jadro a spraviť tak z triviálneho 100kb programu 10MB moloch
Flash nepoužívám, jeho použití mi nepřináší žádné výhody.
[13] Otázkou je číslo verze čeho je za tím rovnítkem. Číslo verze prohlížeče, číslo verze zobrazovacího jádra. Nebo je to jenom nějaký obecný specifikátor? A mělo by to číslo za rovnítkem u chrome znamenat číslo verze Google Chrome nebo číslo verze Google ChromeFrame?
@onyx Tomuhle se říká: Když nevím, aspoň to zamlžím 8-)
Takže abych to rozmlžil: Při zkoumání Chrome Frame jsem žádné jiné verzování, než běžné verzování Google Chrome neobjevil. A jelikož se jedná jen o speciální balíček Chrome, není důvod, aby se z pohledu webového vývojáře nějaké takové číslování používalo (z pohledu uživatelů a PC adminů možná nějaké formální časem zavedou).
Pro příznivce CSSquirrel série, včera vyšel strip k tématu: http://www.cssquirrel.com/comic/?comic=38
PPK má k Chrome Frame zajímavý rozbor, má tam i pár komentářů ke zmiňovanému meta tagu: http://www.quirksmode.org/blog/archives/2009/09/google_chrome_f.html
Dan Glazman a jeho postřehy: http://www.glazman.org/weblog/dotclear/index.php?post/2009/09/29/Google-Chrome-Frame
Rozsáhlá série textů o Chrome Frame: http://www.tamurajones.net/DetectingChromeFrame.xhtml
Martin Hassman ex-biochemik, umělecký programátor a publicista. Spoluzakladatel CZilly, zakladatel Zdrojáku, správce HTML5.cz, organizátor hackathonů, čekovacích muzejních nocí aj. akcí.
Přečteno 24 222×
Přečteno 23 716×
Přečteno 20 565×
Přečteno 19 715×
Přečteno 19 665×