Gå til innhold

Hvorfor tolkes XHTML siden som en HTML side?


Anbefalte innlegg

Hei. Jeg har skrevet dette helt øverst på en side (ikke lastet opp, jeg øver meg på dette, og bruker notepad):

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/2002/REC-xhtml1-20020801/DTD/xhtml1-transitional.dtd">

 

En jeg kjenner er god på dette, og sier at det skal være riktig. XHTML skal riktignok være helt nøyaktig. Derfor sjekker jeg om det går an å skrive f.eks: "<b> Hei," og om det da blir bold tekst (uten en sluttag.) Og det blir det!

 

Hvorfor tolkes siden som en HTML side, og ikke en XHTML side, og hvordan løser jeg problemet?

Lenke til kommentar
Videoannonse
Annonse

<?php header('Content-Type: application/xhtml+xml'); ?>

 

Det skal nevnes at dette ikke funker i IE6, og at det derfor ikke er en utbredt måte å gjøre det på. Mitt forslag er at du holder deg til HTML 4.01 til det finnes et godt alternativ. XHTML er ikke et godt alternativ i dag, med mindre du har helt spesielle behov som bare kan dekkes med XHTML (f.eks. inline XML, MathML, etc.).

 

Les mer her: http://www.xml.com/pub/a/2003/03/19/dive-into-xml.html

Endret av Lokaltog
Lenke til kommentar
Dårlig unnskyldning. Du kan jo skrive like ryddig HTML som XHTML, og med mindre du trenger eXtensibiliteten til XHTML, vil jeg faktisk råde deg til å bruke HTML 4.01 Strict, akkurat som Lokaltog sa over her.

 

Men når jeg skriver XHTML vet jeg 100% sikkert at det er riktig. Det var èn av grunnene. Jeg har lyst til å utdype meg i dette, og dermed drive med det beste. Nå har jeg drevet med HTML i en god stund, og vil gå over til XHTML før jeg begynner på Scripting osv. Så hvorfor driver alle andre erfarne webutviklere med XHTML? Dette handler ikke om hva jeg bør velge. Jeg har hørt hva dere mener, og kan tenke på det. Men først og fremst vil jeg få svar på spørsmålet.

Endret av Dezperado
Lenke til kommentar

Hehe, det høres ut som om du er blant alle de andre som også har misforstått hele greia med XHTML. Det har ikke med å begynne å skrive mer "riktig" kode, eller kode som er fremtidsrettet. Hovedårsaken til at XHTML er en dårlig idé i dag er det jeg nevner i innlegget mitt - nemlig at IE6 ikke støtter MIME-typen til XHTML, og dermed tolker XHTML-koden som vanlig HTML-kode med noen merkelige feil (<br /> er ikke god HTML). Dagens nettlesere er ikke modne for XHTML, og mange av de som tidligere gikk over på XHTML-trenden går nå tilbake for å skrive vanlig HTML (jeg er en av dem).

 

Hvis du kan gi noen gode argumenter bortsett fra at du vil skrive "riktig" kode, at du vil skrive fremtidsrettet kode eller at du vil "ta steget videre", så er det greit. Men disse argumentene holder rett og slett ikke mål som grunner til å skrive XHTML. :)

 

Les mer:

http://www.hixie.ch/advocacy/xhtml

http://friendlybit.com/html/why-xhtml-is-a-bad-idea/

Lenke til kommentar
Hehe, det høres ut som om du er blant alle de andre som også har misforstått hele greia med XHTML. Det har ikke med å begynne å skrive mer "riktig" kode, eller kode som er fremtidsrettet. Hovedårsaken til at XHTML er en dårlig idé i dag er det jeg nevner i innlegget mitt - nemlig at IE6 ikke støtter MIME-typen til XHTML, og dermed tolker XHTML-koden som vanlig HTML-kode med noen merkelige feil (<br /> er ikke god HTML). Dagens nettlesere er ikke modne for XHTML, og mange av de som tidligere gikk over på XHTML-trenden går nå tilbake for å skrive vanlig HTML (jeg er en av dem).

 

Hvis du kan gi noen gode argumenter bortsett fra at du vil skrive "riktig" kode, at du vil skrive fremtidsrettet kode eller at du vil "ta steget videre", så er det greit. Men disse argumentene holder rett og slett ikke mål som grunner til å skrive XHTML. :)

 

Les mer:

http://www.hixie.ch/advocacy/xhtml

http://friendlybit.com/html/why-xhtml-is-a-bad-idea/

Det gjør ikke det nei? ^^

 

Vel. Får vel gå for det du har sagt, og håpe på at det vil gå bra :'P

 

Du nevner noe man "ikke kan gjøre i HTML, men XHTML?" Det er også en ting. Jeg vil ikke stoppe opp underveis fordi det er ting jeg ikke får gjort. Er det noe jeg veldig sjeldent får bruk for da?

Endret av Dezperado
Lenke til kommentar

Hehe, fant et par andre artikler til deg:

http://annevankesteren.nl/2004/08/xhtml

http://www.robertnyman.com/2005/04/04/why-xhtml/

 

Fordelene med XHTML slik nettleserstøtten er i dag er svært få. De eneste greie argumentene jeg finner er om du ønsker å utvide dokumentene dine med støtte for XML og DTD-er, men som det står i artikkelen til Anne van Kesteren:

(...) Do you actually think an XML parser is going to download the external DTD and parse it? You know we are talking about XHTML here, right? A browser is not going to download a 2 MB file and parse it, every time it visits a page. You can not rely on the DTD. (You may even omit it, it is almost useless.)
Lenke til kommentar

SVG og MathML er nok dei einaste unntaka – om du har interesse av å eksperimentere med vektoriserte bilete direkte i kodebasen, samt matematiske formlar, må du over på XHTML.

Distler brukar ofte MathML i blogginnlegga sine, og Sam Ruby er kjent for å bruke mykje SVG (sjølv om Sam Ruby aldri faktisk brukar XHTML - han brukar ein javascript-duppedings som "installerer" SVG-støtte i HTML-standarden).

 

Mi meining er at det er greitt å ha kunnskap om både HTML og XHTML, men det viktigaste er enkelt og greitt å berre forstå bruksområda og forskjellane mellom desse. SVG er nok noko som kjem til å breie seg ut framover, det er eg sikker på. Og dette er (for øyeblikket, iallfall) fjerna frå HTML5-spesifikasjonen. Det er derimot tilstades om du serverer dokumentet som application/xhtml+xml.

 

Kort sagt: XHTML støtter eksterne namespaces, slik at ein kan kople på andre standardar. Dette gjer ikkje HTML.

Lenke til kommentar

Er nok ein del som vil auke i bruk ja, men per i dag er det i stor grad eksperimentelle sider eller sider for å illustrere dei aktuelle teknologiane som faktisk tar dei i bruk. Unntak er der alltids, men det rettferdiggjer ikkje det å gå rett på XHTML "fordi det er best" og utan å vete kva dei vesentlege forskjellane mellom XHTML og HTML er. :)

Lenke til kommentar

Du kan skrive PHP i notepad om du vil, men PHP krevjer at scripta/applikasjonen vert køyrd i eit servermiljø som har støtte for PHP. Derfor vil alt du gjer i PHP berre bli spytta ut som rein tekst om du opnar filene lokalt i ein nettlesar (med mindre du har installert PHP på Pcen din).

Lenke til kommentar
Du kan skrive PHP i notepad om du vil, men PHP krevjer at scripta/applikasjonen vert køyrd i eit servermiljø som har støtte for PHP. Derfor vil alt du gjer i PHP berre bli spytta ut som rein tekst om du opnar filene lokalt i ein nettlesar (med mindre du har installert PHP på Pcen din).

 

Okei. Jeg lastet ned noe som het "Foxserv" i stad. Det skulle visst nok sette opp php, mysql osv. Men setter det seg opp av seg selv? For jeg finner det ikke på PCen min :'P

Lenke til kommentar

Så dere anbefaler meg å gå fra XHTML til HTML? Med andre ord, bytte ut (nesten) alt i det nyeste prosjektet mitt?

 

Ikke ment negativt på noen måte. Jeg vil helst gjøre ting slik det er ment de skal gjøres. Hvis dere, de som har peiling, mener jeg skal skrive HTML fremfor XHTML ettersom jeg ikke har spesielle behov for det XHTML tilbyr, skriver jeg gladelig om alt.

 

Oppdatering: Jeg er en stor bruker av phpfunksjonen nl2br(), og denne gjør som kjent om linjeskift til
. Dette blir da feil i HTML. Hvordan foreslår dere at dette løses?

Endret av Runar
Lenke til kommentar

Tenkte litt for fort, her. Det er kanskje ikke en god idé å bruke alt for mange

heller, så jeg tror heller jeg prøver å løse problemet på en annen måte. Men takk for svaret.

 

Venter i spenning på svar angående det jeg egentlig spurte om :)

Lenke til kommentar

Det er egentlig helt opp til deg om du vil bruke XHTML eller ikke. I mine øyne har XHTML flere ulemper enn fordeler for vanlige brukere, og det er ikke noe mindre seriøst på noen måte å bruke f.eks. HTML 4.01 Strict isteden. Vanlig HTML har bredere støtte og er mer "safe" enn XHTML (som parses som XML), fordi et HTML-dokument ikke går på trynet om du har én ørliten feil et sted i dokumentet ditt. Vær også oppmerksom på at Javascript i XHTML-dokumenter er et mareritt sammenliknet med vanlig HTML, fordi man ikke kan bruke bl.a. .innerHTML i XHTML-dokumenter som parses som XML.

 

En annen ting som plager meg er at XHTML føles mer som et slags salgstriks hos mange utviklere. Jeg har sett flere reklamer som bærer preg av at "jeg er bedre enn de andre utviklerne, for jeg koder ekte XHTML for nettsider som er fremtidsrettede". Jeg tror de fleste sider som bygges på XHTML i dag uansett må skrives om før HTML går ut på dato. Jeg tipper også at støtte for HTML 5 blir utbredt lenge før det blir utbredt å skrive dokumenter i XHTML 1.1 og sende dem som application/xhtml+xml.

 

Kort og greit - hvis jeg var deg ville jeg holdt meg til HTML 4.01 foreløpig. :)

Endret av Lokaltog
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...