ßçûê XHTML

XHTML (EXtensible HyperText Markup Language) -ýòî ðàñøèðåííûé ÿçûê ðàçìåòêè ãèïåðòåêñòà, ïðåäíàçíà÷åííûé äëÿ çàìåíû HTML è ñ÷èòàþùèéñÿ áîëåå ñòðîãîé åãî âåðñèåé. Ìîæíî ñêàçàòü, ÷òî XHTML - ýòî HTML, çàïèñàííûé â ñîîòâåòñòâèè ñ ñèíòàêñè÷åñêèìè ïðàâèëàìè XML. Ïåðâàÿ âåðñèÿ XHTML 1.1 áûëà îäîáðåíà Êîñîðöèóìîì Âñåìèðíîé ïàóòèíû W3C â 2001 ãîäó.

 

Öåëè ñîçäàíèÿ

Ïîñëå ïîÿâëåíèÿ XML è âåðñèè HTML 4.0 ñòàëî î÷åâèäíî, ÷òî HTML îãðàíè÷åí è íå îáëàäàåò äîñòàòî÷íîé äëÿ îñóùåñòâëåíèÿ ìíîãèõ çàäà÷ ãèáêîñòüþ. Ýòà îãðàíè÷åííîñòü ñâÿçàíà ñ èñïîëüçîâàíèåì ñòðîãî îïðåäåëåííûõ ñïåöèôèêàöèåé òýãîâ.  XML òýãè èíäèâèäóàëüíû äëÿ êàæäîé òåìû è ìîãóò ñîçäàâàòüñÿ àâòîðîì ïîä êîíêðåòíóþ çàäà÷ó. XHTML - ýòî áàëàíñ ìåæäó îãðàíè÷åíèÿìè æåñòêî çàäàííîãî ñëîâàðÿ è âîçìîæíîñòüþ ìîäèôèöèðîâàòü åãî ïîä ëè÷íûå çàïðîñû.
XHTML ïðåäúÿâëÿåò ðàçðàáîò÷èêàì áîëåå æåñòêèå òðåáîâàíèÿ ïðè ñîçäàíèè âåá-äîêóìåíòîâ. Òàêàÿ ñòðîãîñòü ïîçâîëÿåò äåëàòü ñàéòû, íåçàâèñèìûå îò îòîáðàæàþùåãî óñòðîéñòâà è áðàóçåðà - ïî êðàéíåé ìåðå, â èäåàëüíîì âàðèàíòå. Ýòî îñîáåííî àêòóàëüíî, ó÷èòûâàÿ ðàñòóùåå ñ êàæäûì äíåì ÷èñëî ìîáèëüíûõ óñòðîéñòâ, âîñïðèíèìàþùèõ âåá-èíôîðìàöèþ.

Îñíîâíûå òðåáîâàíèÿ XHTML

  • Âñå òýãè äîëæíû áûòü çàêðûòû. Òå èç íèõ, êîòîðûå ïî ñïåöèôèêàöèè html íå èìåþò çàêðûâàþùåãî òýãà, äîëæíû ñîäåðæàòü â êîíöå ñëýø. Íàïðèìåð,
  • Êàæäûé àòðèáóò äîëæåí èìåòü çíà÷åíèå. Âñå çíà÷åíèÿ äîëæíû áûòü çàêëþ÷åíû â êàâû÷êè (ìîæíî èñïîëüçîâàòü êàê îäèíàðíûå, òàê è äâîéíûå). Íàïðèìåð:
  •  XHTML èìååò çíà÷åíèå ðåãèñòð: âñå èìåíà òýãîâ è àòðèáóòîâ äîëæíû áûòü ñòðî÷íûìè.
  • XHTML áîëåå ñòðîãî îòíîñèòñÿ ê îøèáêàì â êîäå. Äîêóìåíò íå áóäåò îáðàáîòàí äî òåõ ïîð, ïîêà íå áóäóò óñòðàíåíû âñå îøèáêè.
  • Âñå ñïåöñèìâîëû äîëæíû çàìåùàòüñÿ íà èõ òåêñòîâîå ïðåäñòàâëåíèå
  • Êîäèðîâêîé ïî óìîë÷àíèþ ÿâëÿåòñÿ UTF-8.

Äëÿ XHTML ñòðàíèö ðåêîìåíäóåòñÿ çàäàâàòü MIME-òèï - application/xhtml+xml è óêàçûâàòü ïåðåä îïèñàíèåì ñòðóêòóðû äîêóìåíòà, íî ýòî íå ÿâëÿåòñÿ îáÿçàòåëüíûì. Îäíàêî, áðàóçåð IE 8 è íèæå íå óìåþò êîððåêòíî îáðàáàòûâàòü òàêèå ñòðàíèöû, ïîýòîìó ñ XHTML 1.0 èñïîëüçóåòñÿ ñòàíäàðòíûé MIME-òèï - text/html.

Âåðñèè XHTML

  • XHTML 1.0 Ïåðåõîäíûé (Transitional): ïðåäíàçíà÷åí äëÿ ë¸ãêîé ìèãðàöèè èç HTML 3.2 è äëÿ òåõ, êòî èñïîëüçóåò èíëàéí-ôðýéìû.
  • XHTML 1.0 Ñòðîãèé (Strict): ïîëíîñòüþ îòäåëÿåò ñîäåðæàíèå äîêóìåíòà îò îôîðìëåíèÿ (êîòîðîå òåïåðü çàäà¸òñÿ òîëüêî ÷åðåç CSS), ìíîãèå àòðèáóòû (òàêèå êàê, íàïðèìåð, bgcolor è align) áîëåå íå ïîääåðæèâàþòñÿ, èõ ïîâåäåíèå ìîæíî çàäàâàòü òîëüêî ÷åðåç òàáëèöó ñòèëåé.
  • XHTML 1.0 Ôðýéìîâûé (Frameset): èñïîëüçóåòñÿ, åñëè íåîáõîäèìî ðàçäåëèòü îêíî áðàóçåðà íà íåñêîëüêî ôðýéìîâ.
  • XHTML 1.1 Ìîäóëüíûé (Module-based): àâòîðû ìîãóò èìïîðòèðîâàòü äîïîëíèòåëüíûå ñâîéñòâà â èõ ðàçìåòêó.
  • XHTML Îñíîâíîé (Basic): ñïåöèàëüíàÿ îáëåã÷¸ííàÿ âåðñèÿ XHTML äëÿ óñòðîéñòâ, êîòîðûå íå ìîãóò èñïîëüçîâàòü ïîëíûé íàáîð ýëåìåíòîâ XHTML - â îñíîâíîì èñïîëüçóåòñÿ â ìèíèàòþðíûõ óñòðîéñòâàõ, òàêèõ êàê ìîáèëüíûå òåëåôîíû. Ïîäðàçóìåâàåòñÿ, ÷òî îí çàìåíèò WML è C-HTML (ÿçûêè ðàçìåòêè äëÿ ñîòîâûõ òåëåôîíîâ, ÊÏÊ, ñìàðòôîíîâ è äð.)
  • XHTML ìîáèëüíîãî ïðîôèëÿ (Mobile Profile): îñíîâàííûé íà XHTML Basic, äîáàâëÿåò ñïåöèôè÷åñêèå ýëåìåíòû äëÿ ìîáèëüíûõ òåëåôîíîâ.
  • XHTML 2.0. Ïîêà â ðàçðàáîòêå. Ñèíòàêñèñ åùå áîëüøå ïðèáëèæåí ê ñèíòàêñèñó XML. Òàêæå ÿâëÿåòñÿ ìîäóëüíûì ÿçûêîì.

 

Ïîääåðæêà áðàóçåðàìè

XHTML ïîääåðæèâàåòñÿ ëþáûì áðàóçåðîì, ñïîñîáíûì èíòåðïðåòèðîâàòü HTML, ïîñêîëüêó XHTML èñïîëüçóåò HTML-ñëîâàðü.