Proč Google neužívá HTML5 elementy?

Anonym54073631.05.2013 15:31 Nahlásit
Chci předělat svoje stránky do HTML5, tak jsem se chtěl poučit, jak ostatní používají HTML5 elementy. Koukal jsem na různé stránky Google, jako například jejich oficiální blog, stránky o Google atd. a zjistil jsem, že Google má sice doctype ve formátu HTML5, ale jinak elementy HTML5 jako <article>, <nav>, <header>, <footer>, <section>, <aside> atd. na svých stránkách neužívá a místo toho používá obyčejné <div>. Proč, když HTML5 specifikace už tu je roky?

Odpovědi

Přidat odpověď ▾

Diskuze

Anonym53715531.05.2013 16:56 Nahlásit
Protože ne všechny prohlížeče je podporují. Starší verze IE než 10 s tím mají problém a cílem internetové prezentace není zobrazit hlášku "je nám to vážně líto, ale používáte nepoužitelný prohlížeč"...
Anonym53715531.05.2013 16:58 Nahlásit
Youtube v HTML-5 módu nepoužívá tyto building blocks ze stejného důvodu, nicméně to HTML-5 chování je v tom, jak to přehrává. Klasicky se používá nějaký FLASHohvý nesmysl, přičemž v rámci HTML-5 už umí prohlížeč přehrávat sám. A mnohem lépe.
Anonym54076931.05.2013 17:56 Nahlásit
Tím to nebude, protože to jsou sémantické elementy, které nemají žádnou speciální funkčnost, chovají se stejně jako DIV. Jediný problém je, že nejdou ostylovat v IE 6-8 pomocí CSS, ale to se snadno opraví krátkým Javascriptem, kdy se pro každý neznámý element udělá createElement, takže třeba pro NAV se udělá document.createElement('nav') a pak lze používat tyto sémantické elementy ve všech prohlížečích počínaje archaickým IE 6 (který ani Google na mnoha svých webech nepodporuje). Google sám na to nabízí jednoduchý JS program code.google.com/p/html5shiv/, který vložíte do HTML a máte po straostech:

<!--[if lt IE 9]> <script src="dist/html5shiv.js"></script> <![endif]-->

Proč Google tyto elementy nepoužívá nevím.
Anonym54527812.06.2013 17:19 Nahlásit
Spousta webů od Google vůbec bez JS nejede (např. Gmail se vůbec nerozjede, YouTube nefunguje, ...) nebo jede velmi omezeně nebo vypadá úplně jinak než normálně, takže ten argument s JS není platný. Nechápu, proč ty nové elementy Google nepoužívá, když se spolupodílel na specifikaci HTML5.
Anonym53715517.06.2013 17:05 Nahlásit
Chces-li tedy asi nejvice padny argument, tak proto, ze HTML5 je stale ve vyvoji a nejedna se o standardizovany format. Nejaka pouzitelna finalni specifikace se ocekava az v roce 2014. Tohle znamena nekolik dulezitych veci - zejmena, ze ne kazdy prohlizec nativne podporuje html5 v celem rozsahu a stejnym zpusobem. Pokud existuje nejaky js shit (zamerne nepisi shiv), ktery HTML5 funkcionalitu dodava, tak se tak deje za cenu vykonu a pozdavku podpory js na strane klienta. Z pohledu dodavatele obsahu je mnohem rozumnejsi pouzivat standardizovany format, ktery podporuje nejvice klientu a ktery nevytvari dalsi zavislosti.
Anonym54527817.06.2013 17:52 Nahlásit
Nemáš pravdu ze dvou důvodů:
1. Ten shiv v podstatě jen udělá CreateElement a nastaví styl pro těch pár tagů, o nějakém poklesu výkonu nemůže být řeč. Navíc se uplatní jen u IE do verze 8, jinak se vůbec nevloží:
<!--[if lt IE 9]> <script src="dist/html5shiv.js"></script> <![endif]-->
O požadavku podpory JS píšu 12.06.2013 17:19, JS je vyžadován stejně.

2. Ale hlavně Google stránky JSOU v HTML5! Jen nepoužívají některé jeho elementy, ale jsou v HTML5, používají totiž HTML5 doctype: <!doctype html>.

Ty odpovídáš na otázku, proč stránky Google nejsou v HTML5, ale na to nemá smysl odpovídat, protože stránky Google jsou v HTML5. Otázka byla, proč Google nevyužívá některé nové sémantické elementy HTML5.
Anonym53715517.06.2013 20:41 Nahlásit
*povzdech*
kazda js manipulace dokumentu je vypocetne nakladna a do znacne miry neprijemna. nejprve se musi nacist cely dokument, je vykreslen, pak je via js upraven a pak je znovu vykreslen, s temito zmenami.

a *povzdech* cislo dva: a proc by meli pouzivat nove semanticke elementy? jediny opravdu uzitecny duvod? rad bych se jej dovedel :)
Anonym54672117.06.2013 21:10 Nahlásit
doporučuju si nastudovat,jak funguje Javascript v prohlížečích,než o něm něco začneš psát....
Anonym53715517.06.2013 23:50 Nahlásit
ale jistě, proč ne. nicméně pár úvah:
- prvně, pokud nějak rozumně zpracováváme html dokument, tak potřebujeme mít jeho kompletní strom (nebo nějakou jinou reprezentaci)
- strom je kompletní ve chvíli, kdy je celý dokument stažen a zpracován
- v tuhle chvíli je také vykreslen (i pokud byl vykreslován per partes)
- a až v tuto chvíli se dostává ke slovu js, který má dokument nějak změnit
- prakticky je odchycene window/load event a event loop dotyčného vlákna je přerušen, skočí do nějaké procedure, která provede změny, které se projeví po návratu do event loopu.
- long story made short, v tuhle chvíli se projeví změny a celá stránka je překreslena

(sidenote: i am so NOT sorry about overusing "chvíli")
Přidat komentář do diskuze ▾