Sobes.tech
Junior

Jaké jsou rozdíly mezi HTML5 a HTML4.01, stejně jako XHTML 1.0?

sobes.tech AI

Odpověď od AI

HTML5 je nejnovější verze HTML s novými prvky (semantic elements například <article>, <section>), podporou multimédií (<video>, <audio>), API pro práci s geolokací, webovým úložištěm a offline aplikacemi. Je flexibilnější vůči chybám syntaxe a zpětně kompatibilní.

HTML4.01 je předchozí standard s méně přísnými pravidly syntaxe ve srovnání s XHTML. Nepodporuje nové funkce HTML5 přímo z krabice.

XHTML 1.0 je HTML přepsaný jako XML aplikace. Vyžaduje přísné dodržování syntaxe (například uzavření všech tagů, používání malých písmen pro názvy prvků a atributů, povinné použití uvozovek pro hodnoty atributů). Byl navržen pro větší rozšiřitelnost a kompatibilitu s nástroji pro zpracování XML.

Hlavní rozdíly lze shrnout takto:

  • Syntaxe: HTML5 je nejvíce flexibilní, XHTML 1.0 nejpřísnější (kompatibilní s XML), HTML4.01 je uprostřed.
  • Sémantika: HTML5 obsahuje nové sémantické tagy pro lepší strukturu obsahu.
  • Funkčnost: HTML5 přidává mnoho API pro interaktivní webové aplikace.
  • Zpracování chyb: HTML5 má jasnější pravidla pro zpracování chyb, prohlížeče se lépe zotavují po nesprávné syntaxi.
  • Typ dokumentu (DOCTYPE): V HTML5 je mnohem jednodušší: <!DOCTYPE html>. V HTML4.01 a XHTML 1.0 jsou delší a označují použitou DTD.

Příklad DOCTYPE:

<!DOCTYPE html>
<!-- HTML5 -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- HTML 4.01 Transitional -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- XHTML 1.0 Strict -->

Porovnávací tabulka:

Funkce HTML5 HTML4.01 XHTML 1.0
Syntaxe Flexibilní Mírně přísná Přísná (XML-kompatibilní)
DOCTYPE <!DOCTYPE html> Dlouhý (DTD) Dlouhý (DTD)
Sémantika Nové sémantické tagy Méně sémantiky Méně sémantiky (ve srovnání s HTML5)
Multimédia Zabudovaná podpora (<video>, <audio>) Vyžaduje pluginy Vyžaduje pluginy
API Mnoho nových API Omezené Omezené
Zpracování chyb Definováno a předvídatelné Méně předvídatelné Vyžaduje přísné dodržování syntaxe
Kompatibilita s XML Nevyžaduje Nevyžaduje Kompatibilní