HTML5
<s>HTML () jezik je osnova svake veb stranice, uz pomoć koga se prezentuje izgled i sadržaj iste.</s><s>Omogućava formatiranje stranice, obradu slika, teksta i još mnogo toga.</s><s>Konzorcijum za veb () (W3C) je zadužen za određivanje standarda, ovo je neophodno zato što ne bi bilo moguće pregledavati bilo koju stranicu u bilo kom pretraživaču.</s>

<s>HTML5 je predlog novih standarda koji nam pružaju nove mogućnosti, kao i da isprave i nadomeste neke dosadašnje nedostatke.</s><s>Radi se o novoj verziji HTML-a, koja donosi niz novina i mogućnosti koje do sada nisu bile dostupne koristiti za izradu veb sajtova bez dodatnih dodataka (), kao što su Flash, Java i Silverlight.</s><s>HTML5 predstavlja evoluciju HTML 4.01 standarda, a ne zamenu.</s>

<s>Istorija</s>

<s>Ne možemo početi priču o HTML5 bez pomena najzaslužnijih ljudi, kao i bez osvrta na prethodne verzije i do danas utvrđenih standarda.</s>

<s>Najzaslužniji za razvoj HTML-a 5 je Tim Berners-Lee.</s><s>Sve je počelo još 1980. godine, dok je Tim Berners-Lee radio po ugovoru u CERN-u ().</s><s>Predložio je prototip sistema za istraživače u CERN-u, uz pomoć koga bi mogli da koriste i dele dokumente.</s><s>1989. godine, Tim Berners-Lee je napisao rad kojim predlaže hipertekst ()  sistem baziran na Internetu.</s><s>U drugoj polovini 1990. godine specificirao je HTML i napisao softver i za server i za pretraživač.</s><s>Te iste godine Tim Berners-Lee i inženjer informatike u CERN-u Robert Cailliau, su sarađivali i zajedno zahtevali sredstva, ali projekat nije formalno usvojen od strane CERN-a.</s><s>U svojim ličnim beleškama iz 1990. godine Tim Berners-Lee je nabrojao  neke od mnogih oblasti gde se hipertekst koristi, a kao prvu je stavio enciklopediju.</s><s>Prvi pisani javni dostupni dokument o HTML-u je bio dokument pod nazivom „HTML Tags“.</s><s>Objavio ga je Tim Berbers-Lee u drugoj polovini 1991. godine.</s><s>U ovom dokumentu je opisano 20 elemenata, koji su sačinjavali relativno jednostavan dizajn HTML-a.</s>

<s>HTML je skraćenica od HyperText Markup Language koji veb pretraživači koriste da interpretiraju i slože tekst, slike i ostale materijale na veb strani.</s><s>Početne karakteristike za svaki element HTML-a je definisan u pretraživaču, a ove karakteristike se mogu dopuniti i izmeniti korišćenjem CSS-a.</s><s>Tim Berners-Lee je smatrao HTML kao primenu SGML-a ().</s><s>Formalno je definisan kao takav od strane IETF-a() radom iz sredine 1993. godine, koji je bio predlog prve specifikacije HTML-a: "Hypertext Markup Language (HTML)" Internet-Draft by Berners-Lee and Dan Connolly, koja je uključivala SGML Document Type Definition da definiše pravila, tj. gramatiku.</s><s>Pri kraju 1993. godine, Dave Raggett je predložio standardizaciju već implementiranih elemenata kao što su tabele i forme.</s><s>1994. godine je Beerners-Lee osnovao W3C na Masačusetskom tehnološkom institutu (), koji je usvojen kao standard prema kojem će sve veb stranice u budućnosti raditi na isti način.</s><s>Posle isticanja HTML-a sa dopunama, na početku 1994. godine IETF je osnovao HTML radnu grupu (), koja je 1995. godine završila „HTML 2.0“, prvu HTML specifikaciju sa namerom da se na njoj temelje sva dalja usavršavanja i izmene.</s><s>HTML 2.0 je uključio ideje iz HTML-a, kao i iz HTML-a sa dopunama, ali sa osnovnom namerom da se razlikuje od prethodnih verzija.</s><s>Budući razvoj pod okriljem IETF-a je prekinut zbog sukoba interesa.</s>

<s>Od 1996. godine HTML specifikacija je održavana, dopunjavana od strane tvoraca komercijalnih softvera, kao i od strane W3C-a, čiji je osnivač Tim Berners-Lee.</s><s>2000. godine HTML postaje internacionalni standard (ISO/IEC 15445:2000).</s><s>HTML 4.01 je objavljen krajem 1999. godine, sa dopunom je objavljena još jedna verzija 2001. godine.</s>

<s>2004. godine se počinje sa radom na HTML5.</s><s>Ovom projektu se uz W3C priključila i WHATWG () 2007.</s><s>Godine.</s><s>Mnogi su mislili da će WHATWG nestati kao samostalna organizacija, ali se zadržala kao takva i nastavila rad na specifikaciji HTML-a 5. Trenutno postoje dve paralelne verzije HTML-a 5, jedna službena na kojoj radi W3C, i neslužbena na kojoj rade stručnjaci iz Applea, Mozille, Opere i Googlea, koji imaju veliki uticaj na razvoj Interneta, iako iza sebe nemaju formalnu organizaciju kao što je W3C.</s><s>Ipak, urednici HTML-a 5 specifikacije za oba tima su isti ljudi, što znači da grupe međusobno sarađuju i da će na kraju ipak postojati jedan standard.</s><s>Urednici HTML 5 specifikacije su Ian Hickson iz Googlea i David Hyatt koji radi za Apple.</s>

<s>Specifikacije 
 -{HTML}- 2.0 – (-{RFC}- 1866)
 -{HTML}- 3.2 – 14 januar 1997,
 -{HTML}- 4.0 – 18. decembar 1997,
 -{HTML}- 4.01 (manje izmene) – 24. decembar 1999,
 -{ISO/IEC}- 15445:2000 (-{„ISO HTML“}-, bazirano na -{HTML 4.01 Strict}-) – 15. maj 2000.
 -{HTML}-5 – 22. januar 2008 (još uvek u razvoju)</s>

<s>Šta je HTML5?</s><s>Iako je WHATWG počeo sam da razvija HTML 5, može se reći da je HTML 5 proizvod saradnje W3C-a i WHATWG-a.</s><s>HTML5 je još uvek u fazi razvoja, a standardizacija se očekuje 2014. godine, po procenama W3C-a.</s><s>Kao peta verzija HTML-a osnovni cilj je bio unapređenje ovog jezika, kao i podrška za najnovije multimedijalne sadržaje.</s><s>Pri tome je cross-platform, tako da nije bitno da li se dokument pregleda pomoću tableta, smartphonea, netbooka, sve dok postoji podrška za HTML5 na pretraživaču.</s>

<s>HTML5 je namenjen da prevaziđe ne samo HTML4, nego XHTML1 i HTML DOM.</s><s>WHATWG je radio na veb formama i aplikacijama, dok je W3C radio na XHTML 2.0. 2006. godine su počeli zajedničku saradnju, tako da se HTML5 može smatrati mešavinom karakteristika i specifikacija HTML-a i XHTML-a.</s><s>Ovome je doprinela zajednička praksa, kao i mnoge greške u postojećim veb dokumentima  Ovo je takođe i pokušaj da se definiše jedinstveni markup jezik, koji se može pisati i u HTML-u i u XHTML-u.</s><s>Ovo uključuje detaljne procesne modele da bi ohrabrilo još interoperabilnih implementacija.</s><s>To proširuje, unapređuje i racionalizuje označavanje dokumenata, kao što je omogućen i API (), za kompleksne veb aplikacije Neki od novih elemenata su video, audio, canvas, kao i mnogi drugi, o kojima će biti reč kasnije.</s><s>Pored novih elemenata ne možemo a da ne pomenemo integraciju SVG () sadržaja, koji zamenjuje upotrebu ‘’object’’ taga.</s><s>Ove inovacije olakšavaju rukovanje multimedijalnim i grafičkim sadržajem na veb-u bez dodatnih plugin-ova i API-a.</s><s>Neki od elemenata su promenjeni, neki izbačeni, sve u cilju pojednostavljenja organizacije i strukture dokumenta.</s>

<s>Osnovni principi 
Na razvoju HTML-a 5 pored pokretača projekta, uključeni su i stručnjaci iz svih većih pretraživača, da bi svojim iskustvom i znanjem doprineli boljem i uspešnijem razvoju.</s><s>Neke od ideja i principa kojima se vode ljudi koji učestvuju u razvoju HTML-a 5 su: 
 Nove karakteristike treba da se baziraju na HTML-u, CSS-u, DOM-u i JavaScript-u
 Smanjiti potrebu za eksternim plugin-ovima (Flash)
 Bolja obrada grešaka
 Više tagova koji bi zamenili skripte
 HTML5 bi trebalo da ne zavisi od uređaja na kome se koristi
 Proces razvoja treba biti dostupan javnosti</s>

<s>Novi elementi i karakteristike</s>

<s>Strukturni i semantički elementi</s>

<s>Medijski elementi</s>

<s></s>

<s>Atribut control na <audio> i <video> elementima dodaje kontrole kao što su -{play}-/-{pause}-, kao i mogućnost kontrole jačine zvuka.</s><s>Atribut autoplay omogućuje automatsku reprodukciju sadržaja po njegovom preuzimanju. <video> element poseduje i poster koji predstavlja link na sliku koja se prikazuje na samom elementu pre reprodukcije; u slučaju da ovaj atribut nije prisutan, prikazuje se prvi  samog video snimka.</s>

<s><source> element omogućava da audio i video datoteke budu na različitim lokacijama i u različitim formatima, a pretraživač će otvoriti prvi format koji podržava.</s><s>Preporuka je da se zbog razlika u kompatibilnosti i video kodecima dodaju izvori ka više datoteka u različitim formatima, kao i da se prikaže poruka sa linkovima ka samim audio i video datotekama kako bi posetioci mogli da pristupe sadržaju u slučaju da njihovi pretraživači ne podržavaju HTML5 audio i video.</s>

<s>Audio</s>

<s>Pre HTML5 nije postojao standard za reprodukciju audio datoteka na veb stranama, već se ona vršila uz pomoć plugin-ova (Flash).</s><s>HTML5 kao jedno od unapređenja sadrži <audio> element, kojim je definisan način za postavljanje i reprodukciju audio snimaka na veb stranama.</s>

<s><audio controls>
	<source src="song.ogg" type="audio/ogg" />
	<source src="song.mp3" type="audio/mpeg" />
	<p>Your browser does not support HTML5 audio.</p>
	<p>Download:
		<a type="audio/ogg" href="song.ogg">Ogg</a> |
		<a type="audio/mpeg" href="song.mp3">MP3</a>
	</p>
</audio></s>

<s>Video</s>

<s>Pre HTML5 standarda nije postojao standard za postavljanja videa na veb stranama,  pa su za pregled video snimaka bili potrebni razni dodaci, Apple QuickTime, RealPlayer ili Adobe Flash.</s><s>Najveći problem je u usaglašavanju formata.</s><s>Implementacije HTML5 u pretraživačima podržavaju .ogg, .mpeg4 i .webM.
<video width="320" height="240" controls>
	<source src="movie.mp4" type="video/mp4" />
	<source src="movie.ogg" type="video/ogg" />
	<p>Your browser does not support the HTML5 video.</p>
	<p>Download:
		<a type="video/mp4" href="movie.mp4">MP4</a> |
		<a type="video/ogg" href="movie.ogg">Ogg</a>
	</p>
</video></s>

<s>Formulari</s>

<s>Do pojave HTML5 standarda, postojalo je samo par osnovnih tipova kontrola na formularima (text, checkbox, radio button, popup list itd.), koji su u trenutku u kome su definisani bili dovoljni.</s><s>Međutim, sa brzom ekspanizijom interneta, kako po broju korisnika, tako i po količini servisa i aplikacija, formulari su postajale sve korišćeniji, a potrebe sve veće.</s>

<s>Elementi</s>

<s>Atributi</s>

<s>HTML5 uvodi nekoliko novih atributa za <form> i <input>:</s>

<s>Tipovi kontrola</s>

<s>HTML5 uvovi pregršt novih tipova elemenata u veb formama, što u mnogome olakšava unos različitih tipova podataka i njihovu proveru.</s>

<s>Grafika 
Do nedavno, veb programeri su bili ograničeni na CSS i JavaScript kod stvaranja animacija i vizuelnih efekata za svoje veb stranice, ili prinuđeni da koriste plugin-ove kao što je Flash.</s><s>Sa dodatkom novih tehnologija kao što su Canvas elementi, Web GL i SVG slike, više nema potrebe za ovim.</s><s>Čak sada imamo i nove mogućnosti, nove funkcije koje možemo koristiti za grafiku na vebu:  
 2D Canvas
 WebGL
 SVG
 SMIL ()
Naravno, nijedna od ovih novih tehnologija ne bi bile od koristi da se brzo ne izvršavaju.</s><s>JavaScript engine su postali dovoljno brzi za pokretanje 3D igara i za manipulaciju videom u realnom vremenu.</s><s>Programeri iskorišćavaju ove olakšice, poplava HTML grafičkih radova se pojavljuje na vebu, od implementacije starih 2D grafičkih algoritama do najnovijih tehnika stvorenih specijalno za moderni veb.</s>

<s>Drag and drop 
Drag and drop se veoma često koriste.</s><s>Predstavlja opciju „hvatanja“ i „puštanja“ objekta na određenu lokaciju.</s><s>U HTML5 drag and drop je deo standarda i bilo koji element može biti premeštan na taj način.</s>

<s>Izbačeni elementi iz HTML4</s>

<s>Sledeći elementi koji su se koristili u HTML4 su uklonjeni u HTML5:
 <acronym>
 <applet>
 <basefont>
 <big>
 <center>
 <dir>
 <font>
 <frame>
 <frameset>
 isindex
 <noframes>
 <strike>
 <tt></s>

<s>Novi objekti</s>

<s>Veb skladištenje 
HTML5 Veb skladištenje () i sesija () skladištenja je najjednostavniji nivo veb skladištenja koji skladišti podatke za trenutnu sesiju – drugim rečima, sve dok je tab pretraživača ili prozor otvoren.</s><s>Ovo možda i nije najbolje rešenje budući da specifikacije ostavljaju otvorenu mogućnost pretraživaču da sačuva ove podatke tokom ponovnog pokretanja.</s><s>Svaki dokument dobija sessionStorage objekat uz nekoliko glavnih funkcija a podaci su klonovi trenutnih vrednosti.</s><s>Prave prednosti dolaze sa pristupom localStorage objektu koji je sličan sessionStorage objektu ali se ponaša potpuno drugačije.</s><s>Tamo gde sessionStorage zaboravlja, localStorage pamti.</s><s>Podaci bi trebalo da budu sačuvani čak i nakon što se prozori zatvore i računar isključi.</s>

<s>Veb radnici 
Veb radnik () je JavaScript skripta definisana od strane W3C-a i WHATWG-a koju izvršava HTML strana u pozadini, nezavisno od ostalih user-interface skipti koje se takođe mogu izvršavati od strane iste HTML strane.</s><s>W3C i WHATWG su zamislili JavaScript radnike kao skriptu koju ne prekidaju user-interface skripte, skripte koje odgovaraju na klik miša ili druge interakcije korisnika.</s><s>Neprekidanje rada JavaScript radnika od strane korisničkih aktivnosti omogućava veb stranama da ostanu dostupne u trenutku izvršenja dugih procesa u pozadini.</s><s>Najjednostavnija primena je u tome da se izvršavaju zahtevni procesi u pozadini bez prekidanja korisničkog interfejsa.</s><s>W3C i WHATWG trenutno rade na definisanju API-a za veb radnike.</s>

<s>Aplikacije sa keširanjem podataka 
Od sve većeg značaja je dostupnost veb aplikacija kada smo offline.</s><s>Svi pretraživači imaju svoje mehanizme za keširanje, ali oni su nepouzdani i neće raditi onako kako želimo.</s><s>Sa ApplicationCache interfejsom HTML 5 pokušava da reši neke neprijatnosti koje se mogu desiti kada smo offline.</s>

<s>Korišćenje keš interfejsa nam pruža tri prednosti:
 Offline pretraživanje – korisnici se mogu kretati po vašoj stranici iako su offline.</s><s>Brzina – keširani podaci su sačuvani na lokalnom disku, tako da se učitavaju brže.</s><s>Smanjenje opterećenja server – pretraživač skida samo podatke koji su se promenili.</s><s>AppCache omogućava programerima da odrede koje fajlove će pretraživač keširati, a koje ne, za njihovu dostupnost kada je korisnik offline.</s><s>Aplikacija će se učitati i raditi kako treba, čak iako korisnik osveži stranicu.</s>

<s>SSE 
HTML5 događaji slanja na server () omogućavaju veb stranici da se automatski nadogradjuje () sa servera.</s><s>To je bilo moguće i ranije, ali je prvo veb stranica morala da pita da li su novi update-ovi dostupni.</s><s>Sa SSE update stiže automatski.</s>

<s>Primanje SSE notifikacije</s>

<s>EventSource objekat se koristi da bi se primila SSE notifikacija.</s><s>Kreiramo nov EventSource objekat, i određujemo URL stranice koja šalje update.</s><s>Svaki put kada je update primljen, onmessage događaj se pojavljuje.</s><s>Kada se onmessage događaj pojavi, staviti primljene podatke u element sa id=“result“.</s>

<s>Podrška pretraživača 
U ovom poglavlju ćemo videti koji nivo podrške za HTML 5 nam pružaju najpopularniji veb pretraživači.</s><s>HTML 5 se veoma brzo menja i veb pretraživači podržavaju sve veći broj njegovih funkcionalnosti.</s><s>U sledećoj tablici je prikazana trenutna podrška veb pretraživača za HTML 5 (Tabela 3).</s>

<s>Vidi takođe 
 HTML 
 CSS
 SVG</s>

<s>Reference</s>

<s>Literatura</s>

<s>Spoljašnje veze 
 HTML5 – aktuelna specifikacija
 HTML 4.01 — aktuelna specifikacija
 Konzorcijum za web — organizacija koja je propisala HTML standard
 W3C validator — alat za proveru HTML dokumenata
 HTML5 Bookmarks  — korisni članci i beleške
 HTML5 Center  —HTML5 centar za pomoć
 HTML5 Demos — probne verzije i primeri
 Support — testiranje vašeg trenutnog veb pretraživača
 Mobile HTML5 — HTML5 za mobilne telefone
 FindMeByIP — podrška za konkretne funkcionalnosti HTML-a 5 kao i CSS-a
 TestingCenter  — upoređivanje podrške veb pretraživača za HTML 5</s>

<s>HTML</s>

