Åñëè îòêðûòü ëþáóþ âåá-ñòðàíèöó, òî îíà áóäåò ñîäåðæàòü â ñåáå òèïè÷íûå ýëåìåíòû, êîòîðûå îñòàþòñÿ èñõîäíûìè, íåçàâèñèìî îò âèäà è íàïðàâëåíèÿ ñàéòà. Ðàññìîòðèì êîä, êîòîðûé ïåðâîíà÷àëüíî ñîçäàåòñÿ â ðåäàêòîðå Nvu (ïðèìåð 4.1). Äëÿ óäîáñòâà äîáàâëåíû íîìåðà ñòðîê, íî â êîäå èõ, êîíå÷íî æå, áûòü íå äîëæíî, èíà÷å ýòî ïðèâåäåò ê îøèáêå.
Ïðèìåð 4.1. Èñõîäíûé êîä âåá-ñòðàíèöû
01. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
02. <html>
03. <head>
04. <meta content="text/html; charset=Windows-1251" http-equiv="content-type">
05. <title>Âòîðàÿ ñòðàíèöà</title>
06. </head>
07. <body>
08. <br>
09. </body>
10. </html>
Äàëåå ðàçáåðåì îòäåëüíûå ñòðîêè íàøåãî êîäà.
01. !DOCTYPE ïðåäíàçíà÷åí äëÿ óêàçàíèÿ òèïà òåêóùåãî äîêóìåíòà — DTD (document type definition, îïèñàíèå òèïà äîêóìåíòà). Ñóùåñòâóåò íåñêîëüêî âèäîâ !DOCTYPE, îíè ðàçëè÷àþòñÿ â çàâèñèìîñòè îò âåðñèè HTML, íà êîòîðóþ îðèåíòèðîâàíû (ïðèìåð 4.2).
Ïðèìåð 4.2. Äîïóñòèìûå DTD
HTML 3.2 (ïðåäûäóùàÿ âåðñèÿ HTML)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
Ñòðîãèé HTML 4.01
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
Ïåðåõîäíûé HTML 4.01
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
HTML 4.01 ïðè èñïîëüçîâàíèè ôðåéìîâ
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
Ðàçíèöà ìåæäó ñòðîãèì è ïåðåõîäíûì îïèñàíèåì äîêóìåíòà ñîñòîèò â ðàçëè÷íîì ïîäõîäå ê íàïèñàíèþ êîäà äîêóìåíòà. Ñòðîãèé HTML òðåáóåò æåñòêîãî ñîáëþäåíèÿ ñïåöèôèêàöèè HTML è íå ïðîùàåò îøèáîê, ÷òî îáû÷íî ïðèâîäèò ê èíîìó îòîáðàæåíèþ äîêóìåíòà, ÷åì ïëàíèðîâàë ðàçðàáîò÷èê. Ïåðåõîäíûé HTML áîëåå «ñïîêîéíî» îòíîñèòñÿ ê íåêîòîðûì îãðåõàì êîäà, ïîýòîìó ýòîò òèï èñïîëüçîâàòü ïðåäïî÷òèòåëüíåå.
Çàìåòüòå, ÷òî â ïðèìåðå 4.1 íå óêàçûâàåòñÿ ïóòü ê DTD-ôàéëó, êàê ýòî ïîêàçàíî â ïðèìåðå 4.2. Ýòîò ïàðàìåòð íå ÿâëÿåòñÿ îáÿçàòåëüíûì è åãî ìîæíî îïóñòèòü.
Çàìå÷àíèå
×àñòî ìîæíî âñòðåòèòü êîä HTML âîîáùå áåç èñïîëüçîâàíèÿ !DOCTYPE, âåá-ñòðàíèöà â ïîäîáíîì ñëó÷àå âñå ðàâíî áóäåò ïîêàçàíà. Òåì íå ìåíåå, ìîæåò ïîëó÷èòüñÿ, ÷òî îäèí è òîò æå äîêóìåíò îòîáðàæàåòñÿ ïî-ðàçíîìó ïðè èñïîëüçîâàíèè !DOCTYPE è áåç íåãî. ×òîáû íå ïðîèçîøëî ïîäîáíûõ ñèòóàöèé, âñåãäà äîáàâëÿéòå ýòîò òåã â íà÷àëî äîêóìåíòà.
02. Òåã <html> îïðåäåëÿåò íà÷àëî HTML-ôàéëà, âíóòðè íåãî õðàíèòñÿ çàãîëîâîê (<head> ) è òåëî äîêóìåíòà (<body> ).
03. Çàãîëîâîê äîêóìåíòà, êàê åùå íàçûâàþò áëîê <head>, ìîæåò ñîäåðæàòü òåêñò è òåãè, íî ñîäåðæèìîå ýòîãî ðàçäåëà íå ïîêàçûâàåòñÿ íàïðÿìóþ íà ñòðàíèöå.
04. Òåã <meta> ÿâëÿåòñÿ óíèâåðñàëüíûì è äîáàâëÿåò öåëûé êëàññ âîçìîæíîñòåé, â ÷àñòíîñòè, ñ ïîìîùüþ ìåòàòåãîâ, êàê îáîáùåííî íàçûâàþò ýòîò òåã ñ ðàçíûìè ïàðàìåòðàìè, ìîæíî èçìåíÿòü êîäèðîâêó ñòðàíèöû, äîáàâëÿòü êëþ÷åâûå ñëîâà, îïèñàíèå äîêóìåíòà è ìíîãîå äðóãîå. Òàê, ÷òîáû áðàóçåð ïîíèìàë, ÷òî èìååò äåëî ñ êîäèðîâêîé «Êèðèëëèöà (Windows)» è äîáàâëÿåòñÿ ñòðîêà, êàê â ïðèìåðå 4.1.
05. Òåã <title> îïðåäåëÿåò çàãîëîâîê âåá-ñòðàíèöû, ýòî îäèí èç âàæíûõ ýëåìåíòîâ ïðåäíàçíà÷åííûé äëÿ ðåøåíèÿ ìíîæåñòâà çàäà÷.  îïåðàöèîííîé ñèñòåìå Windows òåêñò çàãîëîâêà îòîáðàæàåòñÿ â ëåâîì âåðõíåì óãëó îêíà áðàóçåðà.
06. Îáÿçàòåëüíî ñëåäóåò äîáàâëÿòü çàêðûâàþùèé òåã </head>, ÷òîáû ïîêàçàòü, ÷òî áëîê çàãîëîâêà äîêóìåíòà çàâåðøåí.
07. Òåëî äîêóìåíòà <body> ïðåäíàçíà÷åíî äëÿ ðàçìåùåíèÿ òåãîâ è ñîäåðæàòåëüíîé ÷àñòè.
08. Âíóòðè êîíòåéíåðà <body> ìîãóò ðàçìåùàòüñÿ ïðàêòè÷åñêè ëþáûå ýëåìåíòû âåá-ñòðàíèöû, â ÷àñòíîñòè, òåã <br>, êàê ïîêàçàíî â ïðèìåðå 4.1, ñîçäàåò ïåðåíîñ ñòðîêè.
09. Ñëåäóåò äîáàâèòü çàêðûâàþùèé òåã </body>, ÷òîáû ïîêàçàòü, ÷òî òåëî äîêóìåíòà çàâåðøåíî.
10. Ïîñëåäíèì ýëåìåíòîì â êîäå èäåò çàêðûâàþùèé òåã </html>.