Webové štandardy: XHTML 1.0
Čo je XHTML ?
XHTML (eXtensible Hypertext Markup Language) je štandard súčasných a budúcich typov dokumentov a modulov, ktoré rozširujú HTML 4. Dokumenty rodiny XHTML sú založené na XML a navrhnuté na činnosť v spojení s klientskými aplikáciami založenými na XML.
Štandard XHTML 1.0 je prvým typom dokumentu v rodine XHTML. Ide o reformuláciu troch typov HTML 4 dokumentu ako aplikácií XML 1.0. XHTML je plánované ako jazyk pre obsah, ktorý je prispôsobený XML. XHTML 1.0 ponúka v porovnaní s HTML 4 niekoľko výhod :
- XHTML dokumenty sú prispôsobené XML, môžeme ich teda jednoducho prehliadať, editovať a validovať štandardnými XML nástrojmi.
- XHMTL dokumenty môžu byť vytvorené tak, aby fungovali rovnako alebo lepšie v prehliadačoch prispôsobených HTML 4 aj prehliadačoch prispôsobených XHTML.
- XHTML dokumenty môžu používať aplikácie (skripty, applety ), ktoré sa spoliehajú na HTML Document Object Model alebo XML Document Object Model.
S rozvojom rodiny XHTML sú dokumenty XHTML 1.0 stále kompatibilnejšie s rôznymi XHTML prostrediami.
Štandard XHTML sa pokladá za evolučný krok v histórií Internetu. Migráciou na XHTML môžu vývojári vstúpiť do sveta XML so všetkými jeho výhodami so zachovaním spätnej a budúcej kompatibility.
Prečo XHTML ?
Vývojári dokumentov a dizajnéri klientských aplikácií neustále objavujú nové spôsoby ako vyjadriť svoje myšlienky pomocou značiek. V XML je pomerne jednoduché zaviesť nový element. XHTML je navrhnuté na poňatie týchto rozšírený prostredníctvom XHTML modulov a techník na vývoj nových XHTML modulov. Tieto moduly dovoľujú kombinovať existujúce a nové prvky v procese vývoja obsahu a návrhu klientských aplikácií.
V súčasnosti sú často prezentované alternatívne spôsoby prístupu na Internet. Práve XHTML je navrhnuté s ohľadom na interoperabilitu jednotlivých klientských aplikácií. Je teda možné vytvárať XHTML prispôsobený obsah, ktorý bude použiteľný s ktoroukoľvek XHTML klientskou aplikáciou.
Odlišnosti oproti HTML 4
Dokumenty musia mať správnu syntax
Tak ako XML aj XHTML dbá na správnu syntax. V podstate to znamená, že všetky elementy musia mať uzatváracie tagy alebo musia byť zapísané špeciálnou formou a všetky elementy musia byť vnorené správne.
Aj keď je prekrývanie v SGML zakázané, je súčasnými prehliadačmi tolerované
Správny zápis :
zvýraznený odsek.
Nesprávny zápis :
zvýraznený odsek
.Elementy a hodnoty musia byť zapísané malými písmenami
XHTML dokumenty musia na zápis všetkých HTML elementov a ich hodnôt používať malé písmená, pretože XML rozoznáva veľkosť písmen a napríklad
Pre neprázdne elementy je povinný ukončovací tag
V HTML 4 je povolené pri niektorých elementoch vynechávať ukončovací tag, XML však vynechávanie ukončovacích tagov nepovoľuje.
Správny zápis :
prvý odsek a
druhý odsek
Nesprávny zápis :
prvý odsek a
druhý odsek
Hodnoty musia byť v úvodzovkách
Všetky hodnoty musia byť uzavreté v úvodzovkách, vrátane číselných hodnôt.
Správny zápis :
Nesprávny zápis :
Minimalizácia vlastností
XML nepodporuje minimalizácu vlastností, všetky páry vlastností musia byť zapísané v plnej forme.
Správny zápis :
Nesprávny zápis :
Prázdne elementy
Prázdne elementy musia mať ukončovací tag alebo musí ich začiatočný tag končiť />.
Správny zápis :
Nesprávny zápis :
Medzery v hodnotách vlastností
Klientská aplikácia pri spracuvávaní hodnôt vlastností odstráni prebytočné medzery a namapuje postupnosť jednej alebo viacerých medzier na jednu medzeru.
Elementy skriptov a štýlov
V XHTML sú elementy skriptov a štýlov dekarované ako #PCDAT obsah. Znaky ako < a & sú pokladané za začiatok značkovania a entity ako < a & sú rozpoznané XML procesorom samostatne ako < a &. Predísť tomuto javu je možné zalomením obsahu elementu skriptu alebo štýlu vnútri sekcie CDATA
... obsah skriptu ...
]]>
alebo použiť externý súbor.
SGML vylúčenia
SGML dáva autorovi DTD možnosť vylúčiť špecifické elementy z použitia vnútri iných elementov. V XML nie sú takéto vylúčenia možné.
Elementy s vlastnosťami id a name
HTML 4 definuje vlastnosť name pre elementy a, applet, form, frame, iframe, img a map a zavádza vlastnosť id. Obidve tieto vlastnosti sú navrhnuté ako čiastkové identifikátory.
V XML sú čiastkové identifikátory typu ID a pre každý element môže exitovať iba jedna vlastnosť typu ID. V XHTML je vlastnosť id typu ID a XHTML dokumenty musia použiť vlastnosť id pri definovaní čiastkových identifikátorov.
Vlastnosti s preddefinovanými hodnotami
V HTML 4 aj XHTML existujú vlastnosti s preddefinovanými hodnotami, ktoré je moźné použiť (napríklad vlastnosť type elementu input). V SGML a XML sa takéto vlastnosti nazývajú vyčíslené vlastnosti. Kým v HTML 4 nezáležalo pri interpretácií týchto hodnôt na veľkosti písmen, v XHTML musia byť všetky tieto hodnoty zapísané malými písmenami.
Odkazy pomocou hexadecimálnych hodnôt
SGML a XML dovoľujú odkazy na znaky pomocou hexadecimálnych hodnôt. Kým v SGML môžu byť tieto odkazy zapísané použitím nn; alebo nn; v XML musí byť použitý zápis malými písmenami (nn;).
XHTML v praxi
DTD definícia dokumentu
Každý XHTML dokument musí v prvom riadku obsahovať jednu z troch DTD definícií dokumentu, a to Strict (prísna), Transitional (prechodná) alebo Frameset (prechodná s použitím rámcov) :
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
Vzorový XHTML dokument
Aj keď XML deklarácia nie je vyžadovaná vo všetkých XML dokumentoch, autorom XHTML dokumentov sa odporúča použiť ju vo všetkých vytvorených dokumentoch. Táto deklarácia príde vhod najmä pri použití iného kódovania ako je štandardné UTF-8 alebo UTF-16. Tu je príklad vzorového XHTML dokumentu vrátane XML deklarácie :
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
Vzorový XHTML dokument
Odkaz na w3c.org.
Záver
XHTML jednoznačne patrí medzi perspektívne štandardy. Ak pracujete s HTML (či už 4.01 alebo starším) určite vám odporúčam prechod na XHTML. Taktiež začínajúci tvorcovia www stránok by mala začať s XHTML, pretože oproti HTML 4.01 nie je o nič zložitejšie a jeho znalosť sa v budúcnosť určite zíde.


