De ce doctype-ul este atât de important

De ce doctype-ul este atât de important
Jeffrey Zeldman (Jeffrey Zeldman)

Se pare că ați făcut totul bine, dar site-ul dvs., din anumite motive, nu arată sau nu funcționează, așa cum era de așteptat, în cele mai recente versiuni de browsere.







Ați scris corect codul XHTML standard și standardul CSS. Ați folosit specificația standard pentru a lucra cu DOM (Document Object Model) pentru a gestiona elementele dinamice din pagină. Și totuși, în browserele care par a fi făcute cu respectarea acestor standarde, site-ul dvs. nu funcționează. Cel mai probabil, eroarea se află în antetul greșit al DOCTYPE.

Ce este DOCTYPE?

Eticheta DOCTYPE este, de asemenea, importantă pentru afișarea corectă și funcționarea paginii în browsere care respectă standardele (Mozilla, IE5 / Mac și IE6 / Win).

Dacă utilizați o etichetă incompletă DOCTYPE, vederea depășite de el, sau doar uita despre asta, browser-ul va merge la modul „misterios“, și va începe cu presupunerea că ați scris paginile de eroare de cod și în mod liber se îndepărteze de la standardele, adică. E. Deci, așa cum au scris la sfârșitul anilor '90.

În acest mod, browser-ul va încerca să analiza pagina dvs. în conformitate cu regulile de compatibilitate și va afișa, de exemplu, CSS așa cum ar fi adus versiunea Internet Explorer 4 și DOM va funcționa așa cum el a lucrat în acest browser (IE comută la un vechi DOM, iar switch-ul Mozilla și Netscape 6 este, în general, necunoscut în ce).

Vă recomandăm să citiți Cum se schimbă culoarea marcajului listei html

(Notă: browser-ul Opera nu joacă de aceste reguli, și el încearcă întotdeauna să afișeze pagina ca și în cazul în care au fost în concordanță cu standardele Glory Opera Pe de altă parte, Opera nu acceptă încă pe deplin standardul W3C DOM, dar de lucru pe acest lucru este deja în curs de desfășurare.!).

Unde să obțineți DOCTYPE corect

Deoarece etichetele doctype extrem de important pentru standarde web și deoarece W3C este organizația lider care creează standarde pentru Web-și, s-ar aștepta ca pe site-ul W3C prezintă o listă a tuturor opțiunilor tag DOCTYPE, și s-ar părea că informațiile privind Site-ul W3C poate fi găsit rapid și ușor într-o anumită secțiune. Dar nu este așa, cel puțin la momentul redactării acestui articol.

Da, uneori, W3C publică o serie de articole de instruire. deși majoritatea dezvoltatorilor web nu știu nici măcar despre asta. Însă, în principiu, site-ul W3C conține o colecție de propuneri, proiecte și recomandări scrise de ingineri pentru ingineri. Și când vorbesc despre ingineri, nu mă refer la specialiști simpli în domeniul dezvoltării web, la specialiști ca mine și eu. Vreau să spun ingineri, în comparație cu care suntem niște idioți complet.







Pot petrece toată ziua căutând etichetele corecte DOCTYPE pe w3.org, dar nu voi găsi o singură pagină unde sunt listate împreună. Dacă puteți găsi încă o etichetă DOCTYPE (de exemplu, menționată în orice Recomandare sau Proiect de flux de lucru), este posibil ca aceasta să nu funcționeze pe site-ul dvs.

Vă recomandăm să citiți Yandex.School of webmasters

Toate conținuturile împrăștiate tag-ul W3C DOCTYPE, care atribuie nici un URI, astfel încât tag-ul DOCTYPE, care conține URI-ul atribuie în raport, referitoare la documentele care sunt pe același site-ul W3C. Dacă luați această etichetă cu site-ul W3C, acesta va transfera la site-ul dvs. și inserați-l în paginile dvs., relative URI pentru a indica documente non-existente pe site-ul dvs., astfel, a pierdut inutil munca grea si eforturile de a browser-ului.

De exemplu, pe multe site-uri, puteți găsi următoarea variantă a etichetei DOCTYPE în paginile care au fost mutate din w3.org fără modificări:

Și arăta DOCTYPE așa:

Rețineți că această versiune de DOCTYPE conține versiunea completă a URI la sfârșit. Deoarece eticheta indică locația corectă a documentului, browserul știe unde se află acest document în rețea și, prin urmare, afișează pagina dvs. în standardul pe care l-ați menționat în documentul DOCTYPE.

Opțiunile corecte ale etichetei DOCTYPE

Deci, ce versiune a etichetei DOCTYPE trebuie să folosesc? Următoarele sunt opțiunile pentru eticheta DOCTYPE pentru diverse nevoi:

Standard HTML 4.01 Strict (strict), Tranzitiv (tranzitiv), Frameset (cu cadre)

Standard XHTML 1.0 Strict (strict), Tranzitiv (tranzitiv), Frameset (cu cadre)

XHTML 1.1 DTD

Cum se conectează Yandex.Speller la WordPress

Ce urmează

Mulți dezvoltatori de software au copiat pur și simplu variantele incomplete ale etichetei DOCTYPE de pe site-ul W3C în programele lor. Și ca rezultat: se bazează pe programul care introduce o versiune greșită a etichetei, browser-ul se execută într-un mod "misterios" și te bate fără succes peste puzzle, de ce paginile dvs. nu funcționează așa cum ar trebui.

În viitorul apropiat

Avem toate motivele să sperăm că W3C va publica în curând o listă completă, exactă și convenabilă a tuturor opțiunilor pentru eticheta DOCTYPE pe site-ul său.

Dar, pe măsură ce tot mai multe site-uri web sunt create și lansate în fiecare zi, aveți nevoie de această informație chiar acum, deci aici este - utilizați-o.

UPD: Viitorul a venit deja

Cea mai simplă și mai fiabilă declarație doctype pentru utilizare este cea definită în HTML5:







Trimiteți-le prietenilor: