Přejít k navigační liště

Zdroják » Webdesign » Prohlížeče z druhého konce

Prohlížeče z druhého konce

Články Webdesign

Velké moderní webové prohlížeče s tržním podílem v desítkách procent jsou důvěrně známé, probrané ze všech stran a vznikají o nich hory článků, takže stran podpory nových technologií o nich víme vše. Jak to ale vypadá na „druhém konci“, u prohlížečů, co mají možná tři promile (podílu) dohromady?

Denně používáme IE, Firefox, Operu, Chrome nebo Safari. Ale říkají vám něco názvy Grail, Amaya, Dillo? Jedná se také o webové prohlížeče, ale stojí na okraji zájmu. Často se jedná o produkty typu One man show nebo o malé a nějak specificky zaměřené programy, ve kterých se často najde zajímavý nápad nebo vlastnost. Prohlížečů jsou na trhu desítky, vznikají a zanikají.

V článku si některé ukážeme a zaměříme se u nich na podporu nových vlastností, jako HTML5, CSS 3 a další.

„Malé“ prohlížeče

Některé prohlížeče nemají ambice podporovat nejnovější webové technologie, jiné ano, a za některé to řeší někdo jiný – tedy použijí některé existující renderovací jádro. Co to vlastně je? Jedná se o knihovnu či komponentu, která dokáže načíst HTML kód stránky, obrázky, CSS a další potřebná data, a z nich vykreslí (renderuje) grafickou reprezentaci stránky, kterou pak spatří uživatel.

Pokud by se všichni tvůrci renderovacích jader drželi standardů (a pokud by standardy popisovaly všechny možné situace), měl by být výsledek zobrazení ve všech stejný. Tomu tak ale vždy není, takže v praxi vypadají stejné stránky v různých jádrech jinak (někdy jsou třeba jen o pár pixelů posunuté). Různá bude i rychlost vykreslení. Renderovací jádro není ale pevně svázané s prohlížečem, je možné ho použít i pro jiné činnosti (například jako prohlížeč souborů). Pro webdesignéry může být například užitečný prohlížeč, který umí přepínat renderovací jádra.

Chceme ukázat, jak je to s podporou HTML5 v těchto „menšinových“ prohlížečích. Pokud autor prohlížeče použil existující moderní a odladěné renderovací jádro, má práci snazší a je na tom s podporou moderních technologií stejně jako Firefox a další „velké“ prohlížeče. Kdo se vydal cestou vytvoření vlastního jádra, většinou nové věci nepodporuje, podporu Javascriptu má také velmi omezenou, ale na druhou stranu se často jedná o velmi rychlé a jednoduché jádro. Vytvořit vlastní renderovací jádro podporující plně alespoň standardy HTML a CSS je běh na dlouhou trať. Neúplná podpora CSS v takových jádrech způsobuje, že i prohlížení běžných www stránek, bez skriptování atd., je problematické.

Základní renderovací jádra

  • Trident a Tasman – vyvíjené Microsoftem. Trident je jádro, které je použité v Internet Exploreru 4.0 a vyšších verzích. Tasman byl použit pro Internet Explorer 5 na počítačích Apple.
  • Gecko – jedná se o open source, vyvíjí jej Mozilla Foundation (později Mozilla Corporation). Je napsán v C++ a funguje na mnoha platformách.
  • KHTML – vznikl v prostředí KDE a používá ho například Konqueror. Později z něho vznikl WebKit. Je napsaný v C++.
  • WebKit – open source, vznikl z KHTML, vyvíjen byl firmou Apple. Dnes je vyvíjen i dalšími, jako je například Google, Nokia, Samsung,… Setkáte se s ním třeba ve Chrome, v Safari či na Androidu.

Prohlížeče

Arora

Jedná se o malý lehký prohlížeč, používá jádro QtWebKit. QtWebKit je port Webkit pro prostředí Qt.

Podporované systémy jsou Linux, embedded Linux, FreeBSD, Mac OS X, Windows, Haiku a další platformy podporující Qt. Webkit, a tím i Arora, na tom s podporou HTML5 a Javascriptu není špatně.

Aktuální verze 0.11.0

Arora

Amaya

Není to pouze prohlížeč, ale i editor HTML stránek. Vývoj započal v roce 1996 přímo ve W3C. Projekt startoval jako editor HTML a CSS editor, později začal podporovat i XML, XHTML a další věci jako MathML. Momentálně podporuje HTML 4.01, XHTML 1.0, XHTML Basic, XHTML 1.1, HTTP 1.1, MathML 2.0, částečně CSS 2 a SVG.

Ač má mnoho zastánců, projekt patrně umírá, byl i odstraněn z Ubuntu repozitářů. Dle fóra jsou ještě některé nové vlastnosti v CVS, ale k oficiálnímu vydání už nedošlo. V přípravě byla například podpora HTTPS. Existuje pro platformy Windows, Unix, Linux a MacOS X. U prohlížeče Amaya to opravdu vypadá, že podpora HTML5 nebude. Javascript též není podporován.

Aktuální verze 11.3.1 je z roku 2009. 

Dillo

Jedná se o jednoduchý multiplatformní webový prohlížeč, používající knihovnu FLTK. Je velmi jednoduchý, běhá i na velmi pomalých počítačích, podporuje panely. Poprvé byl vydán v prosinci roku 1999, poslední změny jsou pár týdnů staré. Pokud chcete pomoci při vývoji, tak prohlížeč je psán v jazycích C a C++. Podpora Javascriptu je velmi omezená, od verze 2.1 jsou pomalu implementovány kaskádové styly (CSS). Pro běžné prohlížení webu Dillo moc není, na HTML5 zapomeňte rovnou, Dillo tyto ambice rozhodně nemá.

Aktuální verze 3.0 

Epiphany

Jedná se o prohlížeč pro GNOME, který vyšel z Galeonu. Protože je svázán s GNOME, nemá například vlastní grafické téma a podléhá GNOME. Původně používal jádro Gecko, ale později přešel na WebKit. Má vlastní systém rozšíření, kde najdete například blokování reklamy, autoscroll a další.

Podporované systémy: Linux, BSD, Mac OS X

Vývoj začal v roce 2001, současná verze je 3.0.4.

Galeon

Jeho vývoj začal v roce 2000, ustal koncem roku 2008. Snaha Galeonu byla být pouze www prohlížeč a nic víc, nenabalovat na sebe další programy a funkce, jako to v době jeho vzniku dělal Explorer a Navigator. Používá jádro Gecko.

Poslední verze je 2.0.7

Html Viewer 3 (hv3)

Je minimalistický prohlížeč, postavený na Tkhtml3 (Tcl/Tk). Moc informací se o něm nedočtete, Javascript není podporován, něco málo podporuje z CSS.

Aktuální verze je 08_0203, projekt je pravděpodobně mrtvý. 

Kazehakase

Prohlížeč vzniklý v Japonsku. Používá jádro Gecko. Umí panely, bookmarky. Zajímavá věc je plánovaná do nových verzí – totiž přepínání různých renderovacích jader. Před lety se o něm psalo na Rootu(Bohužel se mi nepodařilo tento program zkompilovat, takže screenshot neuvidíte – pozn.aut.)

Aktuální verze 0.5.4 

Konqueror

Vyvíjen je jako součást prostředí KDE, proto umí více než běžný prohlížeč – například FTP, SFTP, Sambu, má i IMAP klienta. Používá renderovací jádro KHTML a může použít i WebKit. Podporované systémy jsou Linux, Unix, MacOS X, Windows.

Podpora HTML5, CSS3 a Javascriptu není problém.

Vznikl roku 1996, aktuální verze je 4.7.1 

Kylie

Další minimalistický prohlížeč. Bohužel se mi nepodařilo jej zkompilovat a nainstalovat. Moc věcí nepodporuje, nenajdete zde CSS ani Javascript.

Aktuální verze 0.0.7

Links

Většina uživatelů zná Links pouze jako textový prohlížeč a používá ho například v cronu. Links ale umí pracovat i v grafickém režimu. Podporované systémy jsou: Linux, Unix, OS/2, Cygwin, AtheOS, BeOS, FreeMint

Podporuje HTML 4.0, ale ne CSS. Javascript je podporován. Perlička: Ne každý ví, že Links je český produkt. 

Aktuální verze 2.3, první verze je z roku 1999. 

Midori

Je postaven na GTK+, používá renderovací jádro WebKit. Opět se jedná o malý rychlý prohlížeč. Jedná se o poměrně mladý produkt, první release je z roku 2007. Díky tomu, že stojí na WebKitu, je podpora HTML5 dobrá. V některých mini distribucích Linuxu je použit jako výchozí prohlížeč. Podporuje panely. Opět se o něm už psalo na Rootu.

Aktuální verze 0.4.0

Souhrn

Malých prohlížečů je mnohem víc, než jsme v článku ukázali. Zde prezentované jsou ty známější z neznámých. V následující tabulce najdete konkrétní podporu jednotlivých vlastností HTML5 u jednotlivých prohlížečů.V ta­bulce jsou pouze ty, u nichž mělo smysl tyto vlastnosti testovat. K testování byl použit Tester podpory technologií z rodiny HTML5.

Vlastnosti Midori Arora Epiphany Galeon Konqueror
@font-face + + + + +
Canvas + + + + +
Canvas Text + + + +
WebGL
Audio + + + + +
Video + + + + +
rgba() + + + + +
hsla() + + + + +
border-image + + + +
border-radius + + + + +
box-shadow + + + +
text-shadow + + + + +
multiple backgrounds + + + + +
background-size + + + + +
Opacity + + + + +
CSS animations + + +
CSS columns + + + +
CSS gradients + + + +
CSS reflections + + +
CSS 2D transformations + + + +
CSS 3D transformations
exible box model + + + +
CSS transitions + + +
Geolocation API +
File API + + +
Input types + + + + +
Input attributes + + + + +
Local storage + +
Session Storage + + + +
Web Workers + + + +
Application Cache + ? + +
SVG + + + +
Inline SVG + + +
SVG clip paths + + + +
SMIL + + +
Web SQL database + + +
Indexed DB
Web Sockets + + +
Hashchange event + + + +
History management + + +
Drag and Drop + + + +
Touch +
Cross-window Messaging + + + + +

Autor touto cestou děkuje Lukáši Svobodovi za pomoc při přípravě článku.

Komentáře

Subscribe
Upozornit na
guest
34 Komentářů
Nejstarší
Nejnovější Most Voted
Inline Feedbacks
View all comments
Xyw

Skoda, ze Opera/Presto nie je opensource.

Petr Bravenec

S tím Konquerorem se mi to poněkud nezdá. Z uvedených prohlížečů používám primárně právě Konqueror a občas Aroru. V tabulce je uvedeno, že Konqueror prakticky nic neumí, přitom spolu s Arorou používá Konqueror stejné zobrazovací jádro (webkit, u konqueroru je možné přepnout i na khtml). Aroru používám kvůli Flashi, na svém hlavním prohlížeči (Konqueror) Flash nechci.

Nejsem webový vývojář, takže nevím, co znamenají všechny ty položky, které Konqueror „neumí“ – vím však, co je to SVG a taky vím, že Konqueror SVG zvládá, a tabulka v článku kecá.

Vzhledem k tomu, že Konqueror a Arora jsou zobrazením velmi podobné prohlížeče, podle tabulky se však hodně liší, přemýšlím, jak moc důveryhodný je zbytek celého článku.

macan

Zkuste svuj Konqueror otestovat zde http://ukazky.zdrojak.cz/html5/ a porovnejte vysledky. Ja pravda, ze nektere prohlizece byly testovane uz pred nekolika tydny, mozna se podpora o tolik zlepsila.

Tabulka vznika prave timto zpusobem, pouze otestovanim na danem URL

Petr Bravenec

Otestoval jsem (Konqueror 4.6.5), článek prostě kecá. Navíc kecá i ten test. Podpora SVG je jak v khtml tak ve webkitu už hezky dlouho, pár týdnů nehraje roli. Nevím, co test rozumí podporou SVG, ale předpokládám, že když prohlížeč zobrazí moje SVG malůvky, podporu SVG má zabudovanou.

Khtml: Podpora SVG podle testu není.
Webkit: Podpora SVG podle testu je.
Realita: V obou případech se SVG zobrazuje.

Podobné rozdíly jsou v podpoře různých vlastností CSS, s realitou to ale takto v rychlosti porovnat nedovedu.

macan

Opravdu nebylo v mych moznostech u kazdeho prohlizece otestovat vse takhle podrobne. Jak jsem psal v jinem prispevku – pouzil jsem cestu nejmensiho odporu. V systemu byla pomerne aktualni verze Konqueroru, tak jsem ji pouzil.
Bylo by samozrejme zajimave si s tou kompilaci pohrat a zkusit z toho dostat neco vic (ale to bezny uzivatel asi opravdu delat nebude).
Muzete to zkusit a napsat o tom, redakce zdrojak.cz to jiste oceni.

Petr Bravenec

Omlouvám se, ale asi o tom psát nebudu. Je to poněkud mimo moje momentální možnosti.

U toho Konqueroru předpokládám, že jste testoval pouze jádro KHtml. Konqueror lze přepnout i na Webkit (v menu Pohled, Režim zobrazení). Druhá věc je ten test samotný…

Ale nakonec je to jedno – Konqueror sice používám v 99% případů (vyhovuje mi), ale když nezabere ani jedno zobrazení (khtml ani webkit), startuji něco jiného, případně stránku rovnou opouštím. Předpokládám, že ostatní uživatelé menšinových prohlížečů se chovají úplně stejně.

macan

Konqueror jsem zrovna netestoval ja, ale kolega. Mam pocit, ze prepnuti na webkit nebylo testovane. Souhlasim s vami v tom, ze pokud se stranka nezobrazi dobre ani v jednom zobrazeni, nema cenu se s ni dale zabyvat :-)

Rozdiel sposobeny volbami pri kompilacii?

Ten rozdiel pri SVG a ine su urcite sposobene roznymi prepinacmi pre configure pri kompilacii.

macan

Mate pravdu. Snazil jsem se testovat prohlizece na dvou systemech. Uvedeny screenshot ukazuje, ze se jednalo o Konqueror v Ubuntu. Byl pouzit prohlizec, ktery je v systemu pripraven, nebyl kompilovany rucne, takze parametry neznam.

Vlastni HTML5 test je vec serveru zdrojak.cz, take nevim, jak interne SVG testuje.

Je casove pomerne narocne vse otestovat, clanek urcite nemuze do detailu popsat kazdou vlastnost vsech prohlizecu. Myslim, ze bezny uzivatel stejne pouze pusti prohlizec a pracuje s tim co ma a nezkouma, s kterymi parametry si muze sw zkompilovat. Proste jsem vzal to co bylo k pouziti (tak jak by asi sel bezny uzivatel) a to zkusil zhodnotit.

juraj

V tej tabuľke sú síce chyby, ale presne kvôli tomu, že niekto si povie „má to rovnaké zobrazovacie jadro“, správa sa ku Konqueroru a Epiphany ako k najnovšiemu Chromu. A to robí niektoré stránky v týchto prehliadačoch nepoužiteľné.

Vykook

Take jsem si myslel, ze Midori je malej a RYCHLEJ prohlizec. Provozoval jsem ho na FreeBSD/PowerPC a asi po hodine trapeni jsem pouzil Firefox… Mate stejnou zkusenost, nebo byla chyba u me?

Petr Macek

Samozrejme jsem netestoval kazdy prohlizec nekolik dnu. Midori se mi choval tak nejak v ramci ocekavani. Testoval jsem ho na dvou strojich a nepamatuju si, ze by byl nejaky extra pomaly.

utx

Midori jsem provozoval na Zauru s 64MB paměti a pomalým swapem. Proti Firefoxu byl rychlý jako blesk (obzvlášť při startu), proti Lynxu to byl líný hlemýžď.
Bylo ovšem třeba vypnout tu úvodní stránku rychlého výběru, která je implementovaná jako zhruba megový JavaScript. S ní byl start téměř dvakrát pomalejší.

pepazdepa
povinna

Skuste elinks – fork linksu + par patchu.

Sten

Chybí tu ještě jeden prohlížeč pro KDE, který navíc začíná Konqueror vytlačovat (např. v Kubuntu je od 10.10 výchozí), a to je rekonq. Používá KWebKit a podporuje i vývojářské nástroje, které jsou velmi podobné Firebugu. Na druhou stranu není úplně stabilní, obzvlášť ve spojení s Flashem.

František Kučera

+1 zrovna jsem to chtěl napsat – rekonq je jeden z nejzajímavějších „menších“ prohlížečů. Se stabilitou jsem nikdy problém neměl (asi to je tím, že nepoužívám Flash).

Pepa

Mám opatrný dotaz: jakou má článek užitnou hodnotu? Pro tyhle browsery nikdo ladit nebude a to že něco neumějí, s tím jejich uživatelé obvykle počítají a záhy to zjistí.

macan

Mne treba zase nezajimaji kozene oblecky pro ctecky, tak proste clanek nectu. Kazdy ty prohlizece znat nemusi, netusi co je webkit apod. … Treba to nekomu trosku rozsiri obzory. Nejde napsat jeden clanek, ktery se bude libit a neco prinese vsem

Pepa

jenže tohle není nikomu k ničemu ;-)

František Kučera

Já to bral spíš jako upozornění pro uživatele, že existují i jiné prohlížeče, než Firefox, Opera, Chromium, Safari… Asi to mělo vyjít spíš na Rootu a být víc uživatelsky orientované.

BostX

Ma to asi taky vyznam ako pisat clanok o tych co dobehnu maraton v New Yorku ako posledni

nk8215

Kazehakase je výchozí prohlížeč ve Fluxbuntu a je k dispozici i pro ostatní *buntu systémy, jak dokládá tenhle screenshot. :)

kolok

a co SRWare Iron?

volani.webnode.cz

To je v podstatě chromium, to se považuje jako mainstram :D

Ondřej Súkup

Arora je bohuzel uz delsi dobu mrtvy projekt …

František Kučera

Pořád ale funguje a líbí se mi na ní, že není tolik integrovaná s KDE, takže si v ní můžu nastavit nějakou proxy a neovlivní mi to zbytek aplikací.

Ondřej Súkup

S KDE? s KDE nema nic spolecneho .. je postavena na Qt , a uz zacina byt problem ji prelozit s novymi verzemi Qt .., vycemene vyvoj ustal uz koncem 2010 a posledni patche v ni byly mergnuty v kvetnu 2011

jinak ano , take se mi velmi libila …

František Kučera

Vždyť píšu, že není integrovaná – na rozdíl třeba od toho rekonqu. Proto ji používám na tyhle případy – jako hlavní prohlížeč je ale celkem na nic. Pokud se dobře pamatuji, vznikla jako pouhé demo – ukázka použití WebKitu.

dumblob

NetSurf je jeden z mala prohlizecu, ktery ma vlastni jadro na vysoke urovni co se podpory technologii tyce i vlastnosti a zaroven je multiplatformni.

Doporucuji vyzkouset (zejmena na hodne starych pocitacich – vystaci si napr. pouze s 1MB pameti, pokud to bude nutne).

Mimochodem neustale aktivne vyvijeny – a pomerne rychle.

macan

tak na ten jsem nejak nenarazil. Z toho co jsem videl je tenhle opravdu nejdal. Diky

backup

windows?

bez javascriptu je to dneska uz tak trochu problem , ne?

volani.webnode.cz

Nemohli by jste přidat ještě dooble? :D

petr_p

Autor se zjevně neobtěžoval prozkoumat aktuální stav, ale přečetl si stránký projektů nebo vyzkoušel zastaralé distribuční verze.

Například Kazahakase uměl přepínat mezi xulrunerem a Webkitem již před několika lety. Jenže se ukázalo, že rozšířit ovládání z Gecka na Webkit je velmi těžké, tak autoři přepínání odpískali a dnes se Kazehakase nachází ve smrtelné křeči. Třebaže čas od času vyjde nová verze, tak stačí pár úkonů a segfault je tu. A budoucnost je ještě bledší, protože Mozilla přestala řešit samostatný xulrunner a vyvíjí jej pouze jako nedělitelnou část Firefoxu (Firefox > 3.6).

Co se týče linksu, tak ten naopak o podporu JavaScriptu přišel tak před rokem. Autoři prohlásili, že jeho kód je ošklivý a nikdo mu nerozumí. Ve zdrojácích sice je, ale už se nekompiluje.

Nakonec nechápu, proč autor řeší „pět“ prohlížečů nad Geckem a „pět“ nad Webkitem, když jejich schopnosti (z hlediska aurora webových aplikací) jsou prostě dány použitým jádrem. Raději se měl zaměřit na další prohlížeče (lynx, elinks, w3m).

Enum a statická analýza kódu

Mám jednu univerzální radu pro začínající programátorty. V učení sice neexistují rychlé zkratky, ovšem tuhle radu můžete snadno začít používat a zrychlit tak tempo učení. Tou tajemnou ingrediencí je statická analýza kódu. Ukážeme si to na příkladu enum.