Sari la conținut

HTML5

De la Wikipedia, enciclopedia liberă
HTML5
(HyperText Markup Language)
Extensie de fișier.html
Tip MIMEtext/html
Type codeTEXT
UTIpublic.html[1]
Dezvoltat deWorld Wide Web Consortium și WHATWG
Tipul formatuluiLimbaj de marcare
Extins înXHTML5
Format deschis?Da

HTML5 este un limbaj pentru structurarea și prezentarea conținutului pentru World Wide Web, o tehnologie nucleu pentru Internet propusă inițial pentru software-ul Opera.[2]

Date generale

[modificare | modificare sursă]

Este a cincea revizuire a standardului HTML (creat în 1990 și standardizat ca HTML4 din 1997[3]) și din octombrie 2011 este în curs de dezvoltare. Obiectivele sale principale au fost acelea de a îmbunătăți limbajul cu un suport pentru cele mai recente apariții multimedia în același timp menținându-l ușor de citit de oameni și bine înțeles de computere și device-uri (browsere web, parsere, etc.). HTML5 își propune să însumeze nu numai HTML4, dar și XHTML1 și DOM2HTML (îndeosebi JavaScript).[3]
Urmărind predecesorii săi imediați HTML 4.01 și XHTML 1.1, HTML5 este un răspuns la observația că HTML și XHTML utilizate în comun pe World Wide Web sunt un amestec de caracteristici introduse de specificații diferite, împreuna cu acestea mai sunt și caracteristicile diferite aduse de software, de browsere, și multe erori de sintaxă în documentele web existente. Astfel, HTML5 devine o încercare de a defini un singur limbaj de marcare care poate fi scris în oricare dintre sintaxele HTML sau/și XHTML. Acesta include modele detaliate de prelucrare pentru a încuraja mai multe implementări interoperabile; extinde, îmbunătățește și raționalizează disponibilitățile pentru documentele web și introduce marcarea și aplicații API (application programming interfaces) pentru aplicații web complexe.[4] Din aceste motive, HTML5 este un posibil candidat pentru aplicațiile de platforme mobile. Multe caracteristici ale HTML5 au fost create din considerarea că va trebui să devină capabil să ruleze pe dispozitive cum ar fi smart-phonurile sau tabletele.

În special, HTML5 aduce multe noi caracteristici sintactice. Acestea cuprind elemente ca <video>, <audio>, <header> și <canvas> elemente HTML, precum și integrarea conținutului SVG care a înlocuit utilizarea tag-ului generic <object>. Aceste noutăți sunt proiectate pentru a facilita includerea și manipularea în web a conținuturilor multimedia și grafice fără a fi nevoie să se recurgă la proprietățile de plugin și API. Alte noi elemente ca <section>, <article>, <header>, și <nav> sunt proiectate să îmbunătățească conținutul semantic al documentelor. Noi atribute au fost introduse în același scop, în același timp unele elemente și atribute au fost îndepărtate. Unele elemente ca <a>, <cite> și <menu> au fost schimbate, redefinite și standardizate. API-urile și DOM-urile (document object model) sunt certitudini și sunt părți fundamentale în specificațiile HTML5.[4] HTML5, de asemenea, definește in câteva detalii prelucrările necesare pentru documentele invalide, astfel încât sintaxa erorilor va fi tratată uniform de toate browserele cunoscute.[5]

Web Hypertext Application Technology Working Group (WHATWG) a început să lucreze la un nou standard în 2004, când Consorțiul World Wide Web era concentrat pe evoluțiile viitoare ale XHTML 2.0 și HTML 4.01 care nu au fost actualizate din anul 2000.[6] În 2009 W3C a permis cartei XHTML 2.0 Working Group să expire, și a decis să nu o reînnoiască. W3C și WHATWG lucrează în prezent împreună pentru dezvoltarea HTML5.[5]
Chiar dacă HTML5 a fost bine cunoscut ani buni printre dezvoltatorii de web, el devine subiectul general de discuție în media în Aprilie 2010 [7][8][9][10] după ce Steve Jobs, fost CEO la Apple Inc. ,a dat publicității o scrisoare cu titlul "Gânduri despre Flash" în care a concluzionat că Flash nu mai este necesar pentru a urmări filme și pentru a consuma orice tip de resursă web și asta datorită standardelor noi create și deschise în era mobilului, cum ar fi HTML5, care vor câștiga.[11] Aceasta a stârnit o dezbatere în cercurile dezvoltatorilor web, unii sugerând că, atâta timp cât HTML5 va livra funcționalități solide, dezvoltatorii vor trebui să ia în considerare varietatea suporturilor de browsere din diferite părți și standarde, precum și alte diferențe funcționale între HTML5 și Flash.[12]

W3C - procesul de standardizare

[modificare | modificare sursă]

WHATWG a pornit lucrul la caietul de sarcini în iunie 2004 numit "Web Applications 1.0" [13] Astfel în ianuarie 2011, caietul de specificații ca un Proiect de standarde era publicat la WHATWG și proiectul de lucru era publicat la W3C. Ian Hickson de la Google este editorul lui HTML5.[14]
Caietul de sarcini a fost adoptat ca punct de pornire la dezvoltarea noului HTML de grupul de lucru de la W3C, Consorțiul World Wide Web, în 2007. Acest grup a publicat Primul Proiect Public de Lucru din caietul de sarcini în 22 ianuarie 2008.[15] Caietul de sarcini este încă în lucru și se așteaptă să mai continue încă mulți ani deși părți din HTML5 sunt gata de a fi terminate și implementate în browsere înainte ca întregul caiet de sarcini să ajungă la final.[16]
Conform orarului W3C, s-a estimat că HTML5 va ajunge o recomandare a W3C pe la sfârșitul anului 2010. Oricum, obiectivul de timp al Primului Proiect Public de Lucru a fost ratat cu 8 luni și Proiectul "Last Call and Candidate Recommendation" a fost așteptat să fie terminat în 2008[17], dar în ianuarie 2011 HTML5 încă este la stadiul de proiect de lucru în W3C.[18] HTML5 a fost in Last Call la WHATWG din octombrie 2009.[19][20]
Ian Hickson, editorul caietului de sarcini HTML5, se așteptă ca acesta să ajungă la stadiul de Candidate Recommendation în cursul anului 2012.[21] Criteriul ca acest caiet de sarcini să ajungă Recomandare W3C este "două implementări 100% complete și interoperabile". Într-un interviu dat publicației TechRepublic, Hickson previzionează că acesta va mai dura până în 2022 sau chiar mai târziu.[22] Oricum, multe părți din caietul de sarcini sunt stabile și pot fi implementate în produse.
În Decembrie 2009, WHATWG a trecut la un model neversionat de dezvoltare pentru caietul de sarcini HTML5.[23] W3C încă mai continuă cu publicarea unei versiuni momentane de caiet de sarcini HTML5.[24]
Pe 14 februarie 2011, W3C a extins documentul HTML Working Group cu etape clare pentru HTML5. De la acest workgroup se așteapta în mai 2011 să avanseze HTML5 la nivel de "Last Call", o invitație pentru comunitățile din interiorul și din exteriorul W3C de a confirma soliditatea specificațiilor tehnice. Grupul se va concentra apoi pe adunarea de experiență de implementare. W3C este, de asemenea, în plin proces de dezvoltare a unui intreg set de teste pentru a realiza interoperabilitatea largă pentru întregul caiet de sarcini până în 2014 inclusiv, ceea ce acum este un obiectiv pentru atingerea stadiului de Recomandare.[25]

HTML5 introduce un număr de noi elemente și atribute care reflectă utilizarea tipică a unui site modern. Unele dintre ele sunt semantic înlocuite cu utilizări comune de blocuri generice (<div>) și de elemente inline (<span>), de exemplu <nav> - block de navigatie în site -, <footer> - în mod normal se referă la partea de jos a unei pagini web sau la ultima linie de cod HTML - sau <audio> și <video> în loc de <object>.[26][27][28] Unele elemente depreciate din HTML 4.01 au fost șterse, inclusiv nevinovatul element de prezentare <font> și <center>, al căror efect este realizat cu CSS (Cascading Style Sheets). Se pune astfel accent pe importanța DOM scripting (e.g. JavaScript) în comportamentul web.
Sintaxa HTML5 nu mai este bazată pe SGML în ciuda asemănării cu marcajele acestuia. Oricum a fost dezvoltată pentru compatibilitatea cu parserele comune de HTML mai vechi. Aceasta vine cu o nouă linie introductivă, arată ca tipurile de declarare SGML, <!DOCTYPE html>, care declanșează modurile standard de redare.[29] Din 5 ianuarie 2009, HTML5 include de asemenea Web Forms 2.0, anteriorul caiet de sarcini WHATWG.

În completarea marcajelor prezentate mai sus, HTML5 aduce scriptingul API (application programming interfaces).[30] Interfața existentă document object model (DOM) este extinsă de fapt cu caracteristici noi, documentate. Sunt noi API-uri, cum ar fi:

  • Elementul canvas pentru modul de desen 2D. A se vedea Canvas 2D API Specification 1.0 specification[31]
  • Timed media playback - mod de redare media cronometrat
  • Offline storage database (offline web applications)[32]
  • Editare de documente

Nu toate aceste tehnologii sunt incluse în caietul de sarcini HTML5 - W3C, chiar dacă ele sunt incluse în caietul de sarcini WHATWG HTML.[34] Unele din tehnologiile care nu sunt prezente nici în caietul de sarcini W3C nici în cel WHATWG, sunt următoarele de mai jos. W3C publică specificații separate pentru acestea.

  • File API, manipularea încărcării fișierelor.[37]
  • Directories and System. Acest API este destinat să satisfacă utilizarea tehnologiei client-side-storage cazurile de utilizare care nu sunt deservite de o bază de date.[38]
  • File Writer. Un API pentru scrierea de fișiere din aplicații web.[39]


O neînțelegere des întâlnită este aceea că HTML5 nu ar livra animație în paginile web, ceea ce este total neadevărat. Fiecare dintre JavaScript sau CSS 3 sunt necesare pentru animarea de elemente HTML. Animația este de asemenea posibilă utilizând JavaScript și HTML4.[40][sursa nu confirmă]

XHTML5 este serializarea XML a HTML5. Documentele XML trebuie servite cu un tip XML media de internet cum ar fi application/xhtml+xml și application/xml.[41] HTML5 necesită utilizarea strictă a XML, sintaxă bine formatată. Alegerea între HTML5 și XHTML5 se rezumă la alegerea tipului de conținut MIME: tipul de media ales determină ce tip de document se va folosi.[42] În XHTML5 doctype-ul html există și poate fi chiar și omis.[43] HTML5 care a fost scris în conformitate cu ambele standarde HTML și XHTML va produce același tree DOM dacă va fi parsat de HTML și XHTML - proces numit "polyglot markup".[44]

Tratarea erorilor

[modificare | modificare sursă]

Un browser de HTML5 (text/html) va fi flexibil în tratarea sintaxelor incorecte. HTML5 este proiectat de asemenea pentru ca browserele vechi să poată ignora în siguranță noile construcții HTML5. În contrast cu HTML 4.01, caietul de sarcini HTML5 oferă reguli detaliate pentru lexing și parsare cu intenția ca browsere, diferite între ele, vor produce același rezultat și în cazul unei sintaxe incorecte.[45] Deși HTML5 definește azi un comportament consistent pentru documentele "tag soup", documente de taguri, acestea nu sunt considerate ca fiind conforme cu standardul HTML5.[45]

Diferențe față de HTML 4.01 și XHTML 1.x

[modificare | modificare sursă]

Următoarea este o listă sumară de diferențe și câteva exemple specifice:

  • Noi reguli de parsare: orientate către parsare rapidă și compatibilitate; nu se bazează pe SGML
  • Abilitatea de a utiliza inline SVG și MathML în text/html
  • Noi elemente: article, aside, audio, bdo, canvas, command, datalist, details, embed, figcaption, figure, footer, header, hgroup, keygen, mark, meter, nav, output, progress, rp, rt, ruby, section, source, summary, time, video, wbr

  • Noi tipuri de forme de control: dates and times, email, url, search, number, range, tel, color[46]
  • Noi atribute: charset (on meta), async (on script)
  • Atribute globale (care pot fi aplicate oricărui element): id, tabindex, hidden, data-* (custom data attributes)
  • Elemente depreciate ce vor fi șterse cu totul: acronym, applet, basefont, big, center, dir, font, frame, frameset, isindex, noframes, strike, tt

dev.w3.org livrează ultima versiune Editors Draft (10 May 2011) din "HTML5 differences from HTML4",[47] care oferă o prezentare completă a adăugirilor, eliminărilor si schimbărilor în HTML5.

Logo-ul HTML5

[modificare | modificare sursă]
W3C HTML5 logo

În 18 ianuarie 2011, W3C a introdus un logo pentru a reprezenta utilizarea HTML5. Spre deosebire de alte ecusoane emise anterior de W3C, aceasta nu implică valabilitatea și conformitatea cu un anumit standard. Pe 1 aprilie 2011, acest logo este oficial.[48] Când inițial a fost prezentat publicului, W3C a anunțat logoul HTML5 ca "o propunere generala și viziune pentru un set larg de tehnologii web, incluzând HTML5, CSS, SVG, WOFF, și altele".[49] ". Unii susținători ai standardului web, incluzând The Web Standards Project, au criticat această definiție a HTML5 ca fiind un termen umbrelă, subliniind o estompare a terminologiei și o potențială lipsă de comunicare.[49] Peste 3 zile, W3C a răspuns comunității printr-o schimbare a definiției logoului, scoțând din aceasta enumerarea tehnologiilor asociate.[50] W3C spune apoi ca logoul "reprezintă HTML5, piatra de temelie pentru aplicațiile web".[48]

  1. ^ „Mac Developer Library: System-Declared Uniform Type Identifiers”. Apple. . 
  2. ^ HTML Standard, html.spec.whatwg.org 
  3. ^ a b „HTML5 Differences from HTML4” [HTML5 - diferențe față de HTML4]. Working Draft. World Wide Web Consortium. 5 aprilie 2011. Introduction. Accesat în 30 aprilie 2011. HTML4 became a W3C Recommendation in 1997. While it continues to serve as a rough guide to many of the core features of HTML, it does not provide enough information to build implementations that interoperate with each other and, more importantly, with a critical mass of deployed content. The same goes for XHTML1, which defines an XML serialization for HTML4, and DOM Level 2 HTML, which defines JavaScript APIs for both HTML and XHTML. HTML5 will replace these documents.  Verificați datele pentru: |date= (ajutor)
  4. ^ a b „HTML5 Differences from HTML4”. World Wide Web Consortium. 19 October 2010. Accesat în 4 December 2010.  Verificați datele pentru: |access-date=, |date= (ajutor)
  5. ^ a b „Frequently Asked Questions (FAQ) About the Future of XHTML”. World Wide Web Consortium. Accesat în 4 December 2010.  Verificați datele pentru: |access-date= (ajutor)
  6. ^ „HTML 4 Errata”. World Wide Web Consortium. Accesat în 4 December 2010.  Verificați datele pentru: |access-date= (ajutor)
  7. ^ FOX News: No Flash on the iPhone? Apple's Steve Jobs Finally Explains Why
  8. ^ TIME: Steve Jobs: ‘Flash is No Longer Necessary’ and Other Musings
  9. ^ CBS News: Steve Jobs: Why Apple Banned Flash
  10. ^ FastCompany: Steve Jobs: Adobe's Flash Is Old PC History, Open Web Is the Future
  11. ^ "Thoughts on Flash", by Steve Jobs, CEO of Apple, Inc.
  12. ^ Is HTML5 Replacing Flash?
  13. ^ „[whatwg] WHAT open mailing list announcement”. lists.whatwg.org Mailing Lists. Accesat în . 
  14. ^ „HTML5: A vocabulary and associated APIs for HTML and XHTML (Editor's Draft)”. World Wide Web Consortium. Accesat în . 
  15. ^ „HTML5: A vocabulary and associated APIs for HTML and XHTML”. World Wide Web Consortium. Accesat în . 
  16. ^ „When Will HTML5 Be Finished?”. WHATWG. WHATWG Wiki. Accesat în . 
  17. ^ „HTML Working Group”. World Wide Web Consortium. Accesat în . 
  18. ^ „HTML5”. World Wide Web Consortium. . Accesat în . 
  19. ^ „[whatwg] HTML5 at Last Call (at the WHATWG)”. Lists.whatwg.org. Accesat în . 
  20. ^ „Dive Into HTML5”. 
  21. ^ „When Will HTML5 Be Finished?”. FAQ. WHAT Working Group. Accesat în . 
  22. ^ „HTML 5 Editor Ian Hickson Discusses Features, Pain Points, Adoption Rate, and More”. Arhivat din originalul de la . Accesat în . 
  23. ^ Hickson, Ian. „WHATWG: Switching to an Unversioned Development Model”. Accesat în . 
  24. ^ Hickson, Ian. „HTML Is the New HTML5”. Accesat în . 
  25. ^ „W3C Confirms May 2011 for HTML5 Last Call, Targets 2014 for HTML5 Standard”. World Wide Web Consortium. 14 februarie 2011. Accesat în 18 februarie 2011.  Verificați datele pentru: |date= (ajutor)
  26. ^ Introduction to HTML5 video
  27. ^ IBM Developer Works New elements in HTML5: Structure and semantics
  28. ^ ICAMD.org Finalcut Silverlight Films that Videographers share Quicktime in a Flash : Video on the Web using HTML5 and other Codecs
  29. ^ InstantShift [1] HTML5: Worth the Hype?
  30. ^ "HTML5 Differences from HTML4 – APIs" Arhivat în , la Wayback Machine.. World Wide Web Consortium.
  31. ^ "HTML Canvas 2D Context" Arhivat în , la Wayback Machine.. World Wide Web Consortium.
  32. ^ "Web Storage Specification" Arhivat în , la Wayback Machine.. World Wide Web Consortium.
  33. ^ "HTML5 Web Messaging" Arhivat în , la Wayback Machine.. World Wide Web Consortium.
  34. ^ HTML Standard, html.spec.whatwg.org 
  35. ^ "Web SQL Database" Arhivat în , la Wayback Machine.. World Wide Web Consortium.
  36. ^ "Indexed Database". World Wide Web Consortium.
  37. ^ "File API". World Wide Web Consortium.
  38. ^ "Filesystem API". World Wide Web Consortium.
  39. ^ "File API: Writer". World Wide Web Consortium.
  40. ^ "What HTML5 is (and what it isn't)", HTML5 First Look, (lynda.com, 2010), <http://www.lynda.com/home/DisplayCourse.aspx?lpk2=67161>
  41. ^ Anne, van Kesteren. „HTML5 differences from HTML4 – W3C Working Draft 19 October 2010”. World Wide Web Consortium. Arhivat din original la 2013-03-30. Accesat în 2 November 2010.  Verificați datele pentru: |access-date= (ajutor)
  42. ^ Sergey Mavrody "Sergey's HTML5 & CSS3 Quick Reference". Belisso Corp., 2010. ISBN 978-0-615-43321-9
  43. ^ „The XHTML syntax ― HTML5”. Web Hypertext Application Technology Working Group. Accesat în . 
  44. ^ Polyglot Markup: HTML-Compatible XHTML Documents, W3C Working Draft 05 April 2011
  45. ^ a b „FAQ – WHATWG Wiki”. WHATWG. Accesat în . 
  46. ^ „HTML5: The Markup Language Reference: Input Control”. World Wide Web Consortium. Arhivat din original la . Accesat în . 
  47. ^ „HTML5 Differences from HTML4”. FAQ. World Wide Web Consortium. . Arhivat din original la . Accesat în . 
  48. ^ a b „W3C HTML5 Logo FAQ”. World Wide Web Consortium. Accesat în . Is this W3C's "official" logo for HTML5? Yes, as of 1 April 2011. 
  49. ^ a b „HTML5 Logo: Be Proud, But Don't Muddy the Waters!”. The Web Standards Project. Accesat în . 
  50. ^ „The HTML5 Logo Conversation”. World Wide Web Consortium. Accesat în . 

Lectură suplimentară

[modificare | modificare sursă]

Legături externe

[modificare | modificare sursă]
Commons
Commons
Wikimedia Commons conține materiale multimedia legate de HTML5