Doctype anges längs upp på varje webbsida innan <html> taggen och förklarar för webbläsaren vilken HTML version det handlar om i dokumentet.

Screen Shot HTML5 dokument med doctype
Bild: DOCTYPE anges längs upp på webbsidan

 

I bilden ovan så ser du en HTML5 doctype deklaration som är enkel, men det har inte alltid varit så här lätt att deklarera doctype för en webbsida, utan den har varit rätt lång och svår att komma ihåg, det finns en hel del varianter av den också, nämligen Strict, Transitional och Frameset. Jag ska lista de viktigaste varianterna här nedanför:

 

HTML (HyperText Markup Language) DOCTYPE

HTML5 W3C bestämde sig för att strippa ner doctype så mycket som det bara gick, utan att äldre webläsare skulle tolka dokumentet på fel sätt, nämligen slå på quircks mode.

 

HTML 4.01 Strict

 

HTML 4.01 Transitional

 

HTML 4.01 Frameset

 

XHTML (Extensible HyperText Markup Language) DOCTYPE

Löst taget ur Wikipedia

XHTML är en vidareutveckling av HTML, och baserad på XML som har mycket striktare syntax.

I mindre, mobila enheter som mobiltelefoner är det viktigt att inte slösa på resurser för onödiga uppgifter. En av dessa uppgifter var att tolka den komplexa HTML-syntaxen. För att göra all information på Internet mer tillgänglig för fler mottagare krävdes därför ett nytt och striktare språk. Därför skapades XHTML, som tack vare den striktare syntaxen inte krävde lika mycket arbete från tolken.

P.g.a att HTML ”tillåter” fel så skapas en massa onödigt jobb för tolkarna med att korrigera fel i koden. Med XHTML är det rekommenderat att tolken omedelbart slutar rendera dokumentet och visar ett felmmeddelande om ett fel upptäcks. Detta kan få till följd att sidan inte visas alls om den innehåller fel (som i Firefox), eller att den bara visar informationen fram till felet (som i Safari).

För att tolkarna skall använda detta effektivare tolkningsläge måste koden innehålla rätt MIME-deklaration. I praktiken sker det sällan, och majoriteten av marknadens mobila webbläsare tolkar dom faktiskt XHTML som om det vore HTML.

 

Skillnader mot HTML

Skillnaderna mellan HTML och XHTML 1.0 är att att XHTML ska vara välformaterat, med det manar man att alla element alltid måste stängas och får inte nästlas så att de överlappar varandra. Även ensamma måste stängas. XHTML är skiftlägeskänsligt och därför ska alla element- och attributnamn skrivs med gemener. Attributnamn måste dessutom inneslutas inom citationstecken (enkel ‘ eller dubbel ”) och får inte förkortas. <INPUT checked> är därför felaktigt, medan <input checked=”checked” /> är korrekt.

 

XHTML 1.0 Strict är samma sak som HTML 4.01 Strict fast med XML-syntax

 

XHTML 1.0 Transitional  är som HTML 4.01 Transitional fast med XML-syntax, och där tillåts även några utgångna element, till exempel <font>, <center> och <u>.

 

XHTML 1.0 Frameset är samma sak som HTML 4.01 Frameset fast med XML-syntax.

 

XHTML 1.1

XHTML 1.1 är en version av XHTML som i grunden är moduluppdelad. Nästan alla element som beskriver utseende samt ramar har tagits bort ur denna version och ersatts av stilmallar (CSS). Samtidigt har även möjligheten att leverera XHTML 1.1 med MIME-typen text/html (”som HTML”) tagits bort. Eftersom XHTML 1.1 inte får levereras ”som HTML” utan bara som ”äkta XHTML” — d.v.s. XHTML levererad med MIME-typen application/xhtml+xml — kan korrekt kodade och levererade sidor skrivna i XHTML 1.1 för närvarande (våren 2007) till exempel inte tolkas av webbläsaren Internet Explorer 7, på grund av att den webbläsaren helt saknar stöd för ”äkta XHTML” — det vill säga application/xhtml+xml. (källa Wikipedia)

 

DOCTYPE deklarationer, en titt på dom olika varianterna

Kommentera

E-postadressen publiceras inte. Obligatoriska fält är märkta *

%d bloggare gillar detta: