XHTML
XHTML (angl. Extensible Hypertext Markup Language – rozšíriteľný hypertextový značkovací jazyk) je značkovací jazyk podobný HTML, ale s prísnejšou syntaxou. Zatiaľ čo HTML je aplikáciou SGML, veľmi pružného značkovacieho jazyka, XHTML je aplikáciou XML, obmedzenej podmnožiny SGML. XHTML 1.0 sa stalo odporúčaním W3C 26. januára 2000.
Výhody jazyka XHTML
- Dokumenty XHTML sú súčasne dokumentmi XML. Takže môžu byť zobrazované, upravované a validované nielen prehliadačmi a WYSIWYG editormi ale tiež XML nástrojmi.
- XHTML dokumenty môžu byť vytvorené rovnako ako predtým s existujúcimi editormi s podporou HTML 4 a tiež v nových editoroch, ktoré podporujú jazyk XHTML priamo.
- Dokumenty XHTML môžu využívať aplikácie (napr. skripty, applety), ktoré pracujú s HTML objektovým modelom dokumentu, XML objektovým modelom dokumentu DOM alebo pomocou SAX-u(Simple API for XML).
Výhody prechodu na jazyk XHTML
- Vývojári dokumentov a upravovatelia neustále objavujú nové spôsoby vyjadrenia svojich myšlienok prostredníctvom nových značiek. V XML je pomerne jednoduché pridať nové značky alebo ich atribúty. Rodina XHTML je navrhnutá tak aby prijatie takýchto rozšírení bolo možné prostredníctvom XHTML modulov. Tieto moduly umožnia použitie súčasných i nových vlastností pri vytváraní dokumentov.
- Stále sa objavujú nové možnosti prístupu k Internetu. Jazyk XHTML bol navrhnutý s ohľadom na kompatibilitu všetkých možných editorov a prehliadačov. Vďaka novým mechanizmom profilácie dokumentov budú servery a proxy servery schopné rýchlejšie a lepšie spracovať obsah dokumentu. Vďaka štandardizácii bude možné vytvoriť dokument podľa XHTML, ktorý bude použiteľný vo všetkých editoroch a prehliadačoch.
Rozdiely medzi HTML a XHTML
XHTML 1.0 sa oproti HTML 4.01 nelíši. Oba obsahujú tri typy DTD - Strict, Transitional a Frameset. XHTML neobsahuje menej elementov ani menej atribútov. Až v XHTML 1.1 boli úplne odstránené niektoré elementy, ktoré sme mohli nájsť v Transitional a Frameset verziách (X)HTML. Jednotlivé prvky, ktoré spolu tematicky súvisia, boli v jazyku XHTML 1.1 zaradené do modulov. Bola pridaná možnosť rozšíriť XHTML 1.1 o jazyk MathML 2.0.
Budúcnosť jazyka XHTML
V súčasnosti sa pracuje na jazyku XHTML 2. Hlavnými rozdielmi je odstránenie všetkých atribútov upravujúcich vzhľad, rozmery a pozíciu prvkov jazyka. Jednotlivé moduly jazyka budú vyvíjané samostatne. Niektoré z nich sú už dokonca štandardizované (XFoms, XLink, XPoint).
Rozdiely v zápise medzi HTML a XHTML
Keďže XHTML je implementáciou XML, oproti HTML má niektoré dodatočné požiadavky, ktoré zjednodušujú jeho parsovanie a uľahčuje zapamätanie pravidiel človekom.
Značky musia byť písané malými písmenami.
Párové značky musia byť ukončené. (Značka "option" sa v XHTML považuje za párovú.)
- HTML:
<p>Toto je odsek.
<tr><td>Prvá bunka<td>Druhá bunka
<option>Možnosť 1
- XHTML:
<p>Toto je odsek.</p>
<tr><td>Prvá bunka</td><td>Druhá bunka</td></tr>
<option>Možnosť 1</option>
Nepárové značky musia obsahovať koncovú lomku.
- HTML:
<br>
<input type="text" name="text1">
- XHTML:
<br />
<input type="text" name="text1" />
Vlastnosti musia byť uvedené v úvodzovkách alebo apostrofoch.
- HTML:
<td colspan=3>
- XHTML:
<td colspan="3">
Vlastnosti musia mať vždy uvedenú hodnotu.
- HTML:
<textarea readonly>Nejaký text</textarea>
- XHTML:
<textarea readonly="readonly">Nejaký text</textarea>
Aby prehliadač vedel v XML dokumente rozlíšiť XHTML od iných značkovacích jazykov (SVG, MathML), musí mať koreňový element (<html>) uvedený menný priestor.
- HTML:
<html lang="sk">
- XHTML
<html xmlns="http://www.w3.org/1999/xhtml" lang="sk">
Zdroje
Knihy
- Lednár, Matej.: Príručka programátora - Prehľadný sprievodca jazykmi XHTML 1.1, CSS 2.1 a JavaScript 1.5+ s úvodom do DOM. Bratislava: MLD Group, 2009, s.776. ISBN 978-80-89448-00-5
- Lednár, Matej.: Príručka programátora - Aplikujeme DOM s jazykmi XHTML, CSS a JavaScript. Bratislava: MLD Group, 2009, s. 207. ISBN 978-80-89448-01-2
- Lednár, Matej.: Príručka programátora - Prehľadný sprievodca jazykom XHTML 1.1. Bratislava: MLD Group, 2009, s.178. ISBN 978-80-89448-04-3