Doctypes er w3c's standard for hvordan sider skal vises. Dette har betydning for hvilke tags du må/kan inkludere på dine sider.
Der findes omkring 8 forskellige doctypes og hvilken en skal du så vælge? (et rent retorisk spørgsmål, gider du ikke se resten skal du bare vælge xhtml strict og komme videre.)
De to "rigtige"
XHTML 1.0 Transitional
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XHTML 1.0 Strict
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
xhtml doctypes er den korrekte ting at benytte. Den lægger sig tæt op af xml og kræver derfor at du lukker alle tags du åbner. I praksis et skift til xhtml bare at alle tags der ikke har et medfødt lukke tag så, som br, img, input, skal lukkes med /
<input type='text' name='test' />
<img src='billede.png' alt='' />
<br />
At alle attributter og tags skal skives i lowercase
At alle attributter skal omgives af citationstegn " eller '
At alle sider skal validere ifht w3c's validator (http://validator.w3.org/)
(for at få din side til at validere, og for at undgå problemer med æ ø og å, kunne det være en ide at kigge på tegnsæt)
Derudover er kravene til lovlige tags blevet skærpet en del. En del af ideen er at adskille form og indhold. Hvilket sandsynligvis kommer til at betyde at næste version heller ikke tillader inline styles.
IT-telestyrelsen
..har derudover denne her (noget forældede) guide
" http://www.w3.org/TR/html4/ strict.dtd">
I denne udgave skal alt være korrekt, og man må ikke benytte "forældede" (deprecated) tags, fx tags til layout. Strict er den mest fremtidssikrede version.
Et fint valg der dog ikke er den mest fremtidssikrede. Tags behøver ikke blive lukket, hvilket vil sige at <br> er et gyldigt tag (modsta xhtml's <br />)
"http://www.w3.org/TR/html4/loose.dtd">
Den "løse" type, hvor man kan bruge forældede tags.
Klart den letteste at have med at gøre hvis man er ny, eller har lært html dengang explorer var defacto. Du kan bruge <center> og lignende. Det er ikke helt god stil at benytte denne, men hellere loose end ingenting.
Telestyrelsen nævner derudover framesets, men det er ikke noget vi skal komme ind over her. Det er en dødssynd.
Doctypes
HTML 4.01 Transitional
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
HTML 4.01 Strict
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
HTML 4.01 Frameset
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
XHTML 1.0 Basic
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN"
"http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">
XHTML 1.0 Transitional
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XHTML 1.0 Strict
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
XHTML 1.0 Frameset
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
XHTML 1.1
strong<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">