Nu există nicio specificaţie oficială denumită “HTML semantic”. HTML semantic se referă la o practică de a crea documente cu HTML care conţine doar semnificaţia dorită de autor, fără nicio referire la modul de prezentare a acestei semnificaţii. Este parte a ideii de separare a prezentării de conţinut. De exemplu, elementul de accentuare (<em>) şi elementul italic (<i>) sunt funcţional identice în mod implicit, dar au două semnificaţii diferite. Semnificaţia din spatele limbajului de marcare este importantă pentru HTML semantic.
CSS se foloseşte de obicei pentru a crea efecte de prezentare pentru HTML semantic. Cu CSS, un proiectant poate crea conţinutul cu limbajul de marcare semantic adecvat, şi apoi să folosească CSS pentru a altera modul în care apare limbajul de marcare. Idea este că elemente strict de prezentare (precum litere italice sau bolduite) nu trebuiesc folosite în cod şo că orice utilizare a elementelor de prezentare trebuie să aibă semnificaţia ataşată, ca o citare.
Avantajul HTML semantic este că prezentarea textului va fi aplicată în mod consisitent, atâta timp cât marcarea mai adecvată este aplicată consistent. Mai mult chiar, permite schimbarea uşoară a prezentării, prin simpla editare a stilului ca şi prin posibilitatea de transfer a textului de la un sit la altul.
Principalul dezavantaj este că HTML nu conţine suficiente taguri de marcare pentru a descrie fiecare descriere sau semnificaţie singulară. Ca atare, oamenii vor folosi în mod obişnuit tagul diviziune (<div>) împreună cu un set de clase predefinite sau ID-uri pentru a marca corect textul pentru semnificaţia considerată. Dacă proiectantul are o mulţime de secţiuni sau semnificaţii care nu se potrivesc cu limbajul de marcare HTML, s-ar putea să fie nevoiţi să folosească o mulţime de taguri de diviziune (<div>), care pot zăpăci uşor codul.
(Traducere şi adaptare din Wikipedia sub licenţa GNU)
Aveţi nevoie de un webmaster? Click AICI. Tel. 0745-526896
Video: Semantic HTML and Skinnable CSS (Joe Sondow) Java Posse Roundup 2009 Lightning Talk