kaxigt.com

Jag skriver om webben för webben

Doctype: hur när och varför?

Postad: 19 juli 2008 | HTML-guider | No Comments
Lästid: 3 minuter
Den här guiden tar upp hur, när och varför det är så viktigt att använda ett doctype

Många hemsidor på nätet saknar ett giltigt DTD (Document Type Definition) – eller som det egentligen heter; Doctype. Vad är då det kan man fråga sig? Och behövs det verkligen? För att börja med den sista frågan så är svaret ett ja! Alla dokument måste ha det för att vara giltiga och därför ska vi tillsammans reda ut begreppet doctype och vad det innebär. När vi är klara kommer du att förstå varför det är så viktigt.

Låt oss säga att du vill lägga ut en hemsida på nätet men du kanske inte är så jättekunnig inom html. För all del, du vet att man ska börja med html och sluta med /html. Däremellan petar man in head title och body. Sen är det ju bara att tuta och köra – eller? Vore det så enkelt behövdes det inga regler för html överhuvudtaget. Tyvärr så fungerar det inte lika smärtfritt i praktiken.

The HTML document type declaration, also known as DOCTYPE, is the first line of code required in every HTML or XHTML document. The DOCTYPE declaration is an instruction to the web browser about what version of HTML the page is written in. This ensures that the web page is parsed the same way by different web browsers
Ett doctype har att göra med hur sidan kommer att visas i webbläsaren. Vi kan enkelt säga att det är den allra första informationen som ges till varje besökares dator som besöker sidan. Därefter omvandlas denna information så att besökarens webbläsare kan förstå hur sidan är uppbyggd.

Eftersom det finns olika alternativ att bygga upp en hemsida på så är det viktigt att ”tala om” för alla andras datorer hur just din hemsida är tänkt att se ut och fungera. Det är faktiskt så att två hemsidor som i det närmaste ser identiskt lika ut kan vara byggda på två helt olika sätt. Vi kanske bara ser skillnaden i storleken på en bild – i själva verket är skillnaden större än så ”bakom kulisserna”. Det vill säga när vi kikar i hemsidans källa.

Ett doctypes uppgift är att ge besökarens dator rätt information så sidan visas som Du vill att den ska visas.

Vad kan det då vara för information det handlar om?

  1. Först och främst handlar det om på vilket sätt hemsidan är uppbyggd.
  2. Ett ogiltig doctype – eller frånvaron av ett doctype – kan ge stora skillnader i utseendet på hemsidan beroende på vilken webbläsare datorn har som besöker din sida.
  3. Ett giltigt doctype underlättar också för andras webbläsare att tolka din css (stilmall) korrekt därför att de intar då något som heter standardläge. Det innebär att om Du har angivit rätt doctype för just din sida behöver den andra datorn inte ”gissa” eller omtolka dina html-koder. Detta leder till:
  4. Sidan blir mer snabbladdad
  5. Användarvänlig
  6. Att det inte blir så stora skillnader för hur sidan ser ut i andra webbläsare än din egen.

Hur gör vi då för att få ett giltigt doctype? Och var placerar jag det?

De som använder wyswyg-editorer som Dreamweaver eller Html-kit får automatiskt ett giltigt doctype för varje ny sida som skapas. Var bara aktsam på att det är relevant doctype till sidan.

Skickar du upp ditt dokument som HTML är det naturligtvis ett doctype för html du ska använda. Använder du XHTML ska du använda doctype för just XHTML. Närmare beskrivningar om detta doctype får du i guiden rätt doctype.

För Er som hellre använder notepad, anteckningar eller vad det nu är, Ni gör så här. Öppna upp ert dokument. Den textsträng som ska ligga allra högst upp i dokumentet, alltså innan html, är ert doctype. Vi har att välja på ett flertal olika, men de mest vanliga för HTML är följande:

HTML5

<!DOCTYPE html>

HTML 4.01 Transitional

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "https://www.w3.org/TR/html4/loose.dtd">

Är du noga med rena koder ska du använda doctype html 4.01 strict:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

Har du en hemsida gjord i frames (ramar) bör du byta doctype av just den anledningen till denna kod:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "https://www.w3.org/TR/html4/frameset.dtd">

Varför? Jo så att besökarens dator får veta att dina sidor ingår i ett frameset. Sidorna som laddas in i ramarna ska däremot vara DTD HTML 4.01 Transitional.

Frames är en föråldrad teknik att bygga webbplatser med. Vad gäller tillgänglighet, web standards och SEO är dem rent av förkastliga

Fler varianter på doctype hittar ni hos W3C och är Ni intresserade av att fördjupa er i ämnet finns en bra länk hos A List Apart (engelska).

En giltig och korrekt sida innehåller alltså ett doctype, och tänk så mycket denna lilla textsträng kan åstadkomma – och vilken oreda om den inte fanns.