HTML ja XHTML on mõlemad keeled, milles veebilehed kirjutatakse. HTML on
HTML on veebilehtede domineeriv märgistuskeel. HTML loob struktureeritud dokumente, tähistades teksti struktuurilist semantikat nagu pealkirjad, loendid, lingid, tsitaadid jne. See võimaldab piltide ja objektide manustamist interaktiivsete vormide loomiseks. See kirjutatakse siltidena, mis on ümbritsetud näiteks nurksulgudega - näiteks, . Samuti saab laadida skripte keeltes nagu JavaScript.
XHTML on XML-keelte perekond, mis laiendavad või peegeldavad HTML-i versioone. See ei luba siltide ärajätmist ega atribuutide minimeerimise kasutamist. XHTML nõuab, et igal stardimärgendil oleks lõppsilt ja kõik pestud sildid peavad olema suletud õiges järjekorras. Näiteks samal ajal
kehtib HTML-is, oleks vaja kirjutada
XHTML-is.
HTML-dokumendid koosnevad kolmest komponendist koosnevatest elementidest - paar siltidest - algusmärk, lõppsilt; siltide sees antud elemendi atribuudid ning tegelik, tekstiline ja graafiline sisu. HTML-element on kõik, mis jääb siltide vahele ja hõlmab. (Silt on märksõna, mis on lisatud nurksulgudesse).
XHTML-dokumentidel on ainult üks juurelement. Kõik elemendid, sealhulgas muutujad, peavad olema väiketähed ja määratud väärtused peavad olema jutumärkidega ümbritsetud, suletud ja tuvastamiseks pesad. Erinevalt HTML-ist, kus see on valikuline, on see XHTML-is kohustuslik nõue. DOCTYPE deklaratsioon määraks reeglid dokumentide järgimiseks.
Lisaks dokumendi avamisdeklaratsioonidele on erinevused HTML 4.01 ja XHTML 1.0 dokumentide vahel - igas vastavas DTD-s - enamasti süntaktilised. HTML-i aluseks olev süntaks lubab palju otseteid, mida XHTML ei oma, näiteks valikuliste avamis- või sulgemissiltidega elemente ja isegi TÜHJENDA elemente, millel ei tohi olla lõppsilti. Seevastu XHTML nõuab, et kõigil elementidel oleks ava- või lõppsilt. XHTML tutvustab aga ka uut otsetee: XHTML-sildi võib sama sildi sees avada ja sulgeda, lisades kaldkriipsu enne sildi lõppu niimoodi:
. Selle lühendi kasutuselevõtt, mida ei kasutata SGML-i deklaratsioonis HTML 4.01 jaoks, võib segi ajada varasemat tarkvara, mis pole selle uue tavaga tuttav. Paranduseks on tühiku lisamine enne sildi sulgemist kui selline:
.
HTML ja XHTML on tihedalt seotud ja seetõttu saab neid koos dokumenteerida. Nii HTML 4.01 kui ka XHTML 1.0 omavad kolme alamspetsifikaati - range, lahti ja raamikomplekt. Dokumendi erinevused avadeklaratsioonides eristavad HTML-i ja XHTML-i. Muud erinevused on süntaktilised. HTML võimaldab otseteid nagu valikuliste siltidega elemendid, tühjad elemendid ilma lõppsiltideta. XHTML suhtub siltide avamisse ja sulgemisse väga rangelt. XHTML kasutab sisseehitatud keeles funktsionaalsuse atribuuti. Kõik XML-i süntaksinõuded sisalduvad hästi vormistatud XHTML-dokumendis.
Pange siiski tähele, et need erinevused kehtivad ainult siis, kui XHTML-dokumenti kasutatakse XML-i rakendusena; see tähendab MIME tüüpi rakendusega / xhtml + xml, application / xml või text / xml. MIME tüüpi teksti / html-ga pakutav XHTML-dokument tuleb parsida ja tõlgendada HTML-vormingus, seega kehtivad sel juhul HTML-i reeglid. MIME-tüüpi teksti / html-ga kättetoimetatava XHTML-dokumendi jaoks kirjutatud stiilileht ei pruugi töötada ettenähtud viisil, kui dokumenti pakutakse siis MIME-tüüpi rakendusega / xhtml + xml. MIME tüüpide kohta lisateabe saamiseks lugege kindlasti MIME tüüpe.
See võib olla eriti oluline, kui pakute XHTML-dokumente teksti / html-na. Kui te pole erinevustest teadlik, võite luua stiililehti, mis ei tööta ettenähtud viisil, kui dokumenti pakutakse tõelise XHTML-na.
Kui mõisted “XHTML” ja “XHTML dokument” esinevad selle jaotise ülejäänud osas, osutavad need XHTML-i märgistusele, mida pakutakse XML MIME-tüüpi. XHTML-i märgistus, mida kasutatakse tekstina / html, on brauserite jaoks HTML-dokument.
W3C soovituste kohaselt saab HTML-i üleviimiseks XHTML-i (XHTML 1.0 dokumendid) järgida järgmisi samme:
Järgides hoolikalt W3C ühilduvuse juhiseid, peaks kasutajaagent (veebibrauser) olema võimeline tõlgendama dokumente sama hõlpsalt kui HTML või XHTML.
Et mõista peent erinevused HTML-i ja XHTML-i vahel, kaaluge kehtiva ja hästi vormistatud XHTML 1.0 dokumendi muutmist kehtivaks HTML 4.01 dokumendiks. Selle tõlke tegemine nõuab järgmisi samme:
lang
atribuuti, mitte XHTML-i xml: lang
atribuut. XHTML kasutab XML-i sisseehitatud keelt määravat funktsionaalsuse atribuuti. xmlns = URI
). HTML-il puuduvad nimeruumide võimalused.
). tekst / html
. Nii HTML kui ka XHTML puhul tuleb see HTTP-st Sisu tüüp
päis, mille server saadab.
kuni
).