René Poulsen skrev:
> Jeg vil nemlig gerne finde ud af hvilken CT jeg skal angive på
> den side jeg er ved at lave.
Normalt skal du ikke bekymre dig om content-type - en korrekt opsat
webserver skal gerne levere den rigtige type hvis du bare benytter
en normal filendelse (.htm eller .html til rene html-filer, .css
til style sheets).
Jeg tror måske du forveksler Content-Type med Doctype. CT angiver
typen af indhold i en fil - fx "et billede", "en html-fil" eller
"en tekstfil". Doctype anvendes til html-sider og angiver præcis
hvilken slags html filen indeholder (HTML 3.2, HTML4.01, XHTML1.0
Transitional, m.fl).
Som nævnt vil en webserver normalt sørge for en korrekt content-
type når den leverer en fil. Man kan, i serversidesprog, ændre på
content-type for en given fil - fx med det formål at fortælle en
browser at den skal downloade filen i stedet for at vise den. Hvis
du vil vide mere om det, kan du spørge i en serversidegruppe (se
oversigten her: <
http://usenet.dk/grupper.pl?seek=serverside>.
Doctypevalg bruges til to forskellige ting. I første omgang giver
det mulighed for at validere sin side maskinelt - fx på
<
http://validator.w3.org/>. Ved at validere sin side kan man sikre
sig mod mange fejl, og validering er også en god start til at lave
sider der kan ses fornuftigt i mange forskellige browsere.
Her er et par links om hvorfor man bør validere kode:
<
http://www.html-faq.dk/1005.asp>
<
http://diveintomark.org/archives/2003/05/05/why_we_wont_help_you>
Dernæst har valget af doctype - eller rettere valget af
doctypeerklæring - også betydning for hvordan nyere browsere viser
siden. Nyere udgaver af IE, Opera og Mozilla (incl. Netscape 7.x)
har en såkaldt doctype switch der styres af - tada -
doctypeerklæringen. Man skal huske at det ikke er selve doctypen
der er afgørende i doctype switching - det er doctypeerklæringen.
Følgende to eksempler viser forskellen:
[HTML 4.01 Transitional - trigger quirks mode]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
[HTML 4.01 Transitional - trigger standardmode]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"
http://www.w3.org/TR/html4/loose.dtd">
Angives der ikke nogen doctype går browserne i quirks mode.
Specielt for IE gælder at doctypen kun læses hvis den står før alt
andet i dokumentet. Hvis man sætter en html-kommentar eller en xml-
erklæring ind først, går IE i quirksmode uanset hvilken doctype der
følger efter.
Man bør altid skrive nye sider til standardmode - dvs. den mode der
benytter W3's standarder for html og css til at bestemme
browservisningen.
Et par links vedr doctype switching:
<
http://gutfeldt.ch/matthias/articles/doctypeswitch.html>
<
http://html.dk/artikler/00036/>
> Hvad skal i evt. have at vide for at
> kunne fortælle mig hvilken CT jeg skal bruge?
Relevante content-typer for html er:
text/html - standard for html-sider
text/css - standard for css-sider (eksterne style sheets)
Skriver man xhtml 1.1 kan følgende typer også være relevante:
application/xhtml+xml - anbefalet CT for alle XHTML-varianter, men
bemærk at IE _ikke_ understøtter denne CT. I XHTML 1.0 er det også
o.k. at benytte text/html - hvad alle browsere forstår.
application/xml og text/xml - specielt til xml-dokumenter.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på
http://usenet.dk/netikette/citatteknik.html