[XHTML] Moz. messed met de DTD.

Pagina: 1
Acties:

  • Hangloozz
  • Registratie: Juli 1999
  • Laatst online: 13-07 17:24
Ik denk: nou deze page maken we lekker weer in XHTML.

so far so good, IE5 gaat prima maar bekijk ik het doc in Mozilla(RC2) dan wordt het een behoorlijk zooi, getuige onderstaande afbeelding:

Afbeeldingslocatie: http://home.kabelfoon.nl/~hanglooz/imgdiv/rhp_xhtml_probs.gif

Wat blijkt; sloop ik de DT eruit dan laat Mozilla het wel goed zien...
(Het valt me trouwens op dat er vaak DTD gerelateerde probs zijn)

Wat nu? DTD laten vallen of zijn er workarounds voor?

de page waar het om gaat staat hier.

Kunnen de XHTML-guru's hun oog er eens overheen laten gaan? :)

www.jurgroessen.nl


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Allereerst moet je er denk ik maar even een XHTML namespace declaratie inzetten: <html xmlns="http://www.w3.org/1999/xhtml">

Daarna zou het kunnen zijn dat het al dan niet aanwezig zijn van de DTD gevolgen heeft voor de afhandeling van whitespace. Bij normale XML bestanden wordt whitespace in mixed content namelijk pas irrelevant als dat blijkt uit de DTD.

Als dit echter het probleem is, zou je verwachten dat het hier precies andersom zou zijn...

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Hum, maf overigens dat de W3C Validator niet klaagt over de namespace... Ik hoop dat dat toch wel verplicht is :( .

http://validator.w3.org/check?uri=http://www.zicht.nl/rhp/home.html

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • Hangloozz
  • Registratie: Juli 1999
  • Laatst online: 13-07 17:24
lijkt me niet verplicht: als ik Homosite een nieuw doc aanmaak dan komt de DTD zo mee.

www.jurgroessen.nl


  • tomato
  • Registratie: November 1999
  • Niet online
Vraag 2

Meer info

Met dank aan Arien

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Hangloozz: lijkt me niet verplicht: als ik Homosite een nieuw doc aanmaak dan komt de DTD zo mee.
XHTML is XML en dus is het wel degelijk verplicht. Als een element niet in de goede namespace zit, is dit echt een ander element en heeft het dus een andere betekenis of zal in dit geval invalid zijn. De namespace is als het ware de 'achternaam' van een element en de volledige naam is nodig om een element aan te duiden.

Zie hier voor meer info:

http://www.w3.org/TR/xhtml1/#normative

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • Hangloozz
  • Registratie: Juli 1999
  • Laatst online: 13-07 17:24
thnx Tomato voor de linkjes; die hielpen een eind op weg.

Tsja en wat dat betreft is m'n XML kennis te beperkt mbravenboer.
Ik moet daar toch eens wat tijd aan gaan besteden :{

Oplossing for now: de DTD d'r uit; de rest van de page is plain HTML, en het valt niet binnen de offerte om bestaande document om te zetten naar validate XHTML.

www.jurgroessen.nl


  • tomato
  • Registratie: November 1999
  • Niet online
mbravenboer: Hum, maf overigens dat de W3C Validator niet klaagt over de namespace... Ik hoop dat dat toch wel verplicht is :( .
Ik dacht dat bijvoorbeeld een <html> tag buiten de juiste namespace in de RELAX NG implementatie van XHTML zeker niet valid is (ik kan mij tenminste herinneren dat Jing daar over zeurde toen ik een keer de namespace declaratie vergeten was)...

Verwijderd

De standaard xhtml-strict DTD vermeldt het volgende:
code:
1
<!ATTLIST html %i18n; xmlns %URI; #FIXED 'http://www.w3.org/1999/xhtml'>

Dat heeft volgens mij 2 gevolgen:

1: het is niet de bedoeling een andere namespace op te geven dan 'http://www.w3.org/1999/xhtml' wegens het woord #FIXED
2: het attribuut is standaard al toegekend

Het lijkt me dus niet verplicht om de namespace op te geven, aangezien volgens de DTD die namespace standaard al is ingesteld. Toch vind ik het niet netjes om dat attribuut weg te laten, ik voeg het altijd toe.

Ik trek mijn voorzichtige conclusie: het is niet verplicht die xmlns attribute op te geven, daar het al in de DTD gedefinieerd is?

Maar ik raad het wel aan om tóch altijd erbij te zetten.

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Cheatah: Het lijkt me dus niet verplicht om de namespace op te geven, aangezien volgens de DTD die namespace standaard al is ingesteld.
Ah vandaar dat er dus niet werd gezeurd door de validator... Goed gevonden :) .
Ik trek mijn voorzichtige conclusie: het is niet verplicht die xmlns attribute op te geven, daar het al in de DTD gedefinieerd is?
Dat lijkt erop ja, maar dat is wel een riskante aangelegenheid. Eigenlijk heb ik sowieso al een pokke-hekel aan default waarden van attributen in DTD's en in het bijzonder vind ik dit verschrikkelijk.

Ik vind het raar dat je een gereserveerd attribuut als xmlns kunt opnemen in een DTD. Dit geeft maar weer aan hoe totaal ongeschikt DTDs zijn voor de huidige staat van XML.

Als validatie in een XML parser uit staat, zal de DTD geeneens worden geraadpleegd en krijgen de elementen van het document dus semantisch ineens een andere betekenis omdat ze niet meer in de XHTML namespace vallen. Dat lijkt mij een verschrikkelijke oplossing.
Maar ik raad het wel aan om tóch altijd erbij te zetten.
Mee eens :) .

Tot slot: lang leve Relax NG :P .

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Hangloozz:
Oplossing for now: de DTD d'r uit; de rest van de page is plain HTML, en het valt niet binnen de offerte om bestaande document om te zetten naar validate XHTML.
Beetje laat, maar ik kwam 't probleem vandaag ook tegen. De (betere) oplossing is om aan je images een display:block; mee te geven.

Zo ziet mijn source er (gedeeltelijk) uit
code:
1
2
3
4
5
6
7
&lt;body class=&quot;top&quot;&gt;
&lt;table&gt;
   &lt;tr&gt;
    &lt;td&gt;&lt;img src=&quot;gfx/top-01.jpg&quot; border=&quot;0&quot; height=&quot;79&quot; width=&quot;91&quot; alt=&quot;&quot; /&gt;&lt;/td&gt;
    &lt;td&gt;&lt;img src=&quot;gfx/top-02.jpg&quot; border=&quot;0&quot; height=&quot;79&quot; width=&quot;147&quot; alt=&quot;&quot; /&gt;&lt;/td&gt;
    &lt;td&gt;&lt;img src=&quot;gfx/top-04.jpg&quot; border=&quot;0&quot; height=&quot;79&quot; width=&quot;383&quot; alt=&quot;&quot; /&gt;&lt;/td&gt;
   &lt;/tr&gt;

css:
code:
1
2
3
4
5
6
7
8
9
10
    body.top img {
       padding:0; margin:0;
       display:block;
    }
   
    body.top table, body.top td, body.top tr {
       margin:0; padding:0;
       border:0px none;
       border-collapse:collapse;
    }

Meer food for search, dan food for topic :D

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 19-08 22:14

Bosmonster

*zucht*

Wil net zeggen.. hebbie Hangloozz weer met z'n DTD's ;)

  • RM-rf
  • Registratie: September 2000
  • Laatst online: 18:10

RM-rf

1 2 3 4 5 7 6 8 9

[offtopic]
Hanglooz tracteert nu vast op gratis DTD-taart en mag dan alle kaarsje uitblazen wegens zijn 1000-dagen-jubileum @ GoT

:)

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


  • Hangloozz
  • Registratie: Juli 1999
  • Laatst online: 13-07 17:24
hmmz, gaat het opvallen, met die DTD topics :? ;)

drm:
ik zal je oplossing es onder de loep nemen.
Die site wordt nog steeds uitgebreidt dus dan kan dat er ook nog wel bij :P

[offtopic]
ik 1000 dagen op GoT :?
hoe kom je daaraan? eenvoudige rekensom of typische moderator info?

www.jurgroessen.nl


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Hangloozz:
[offtopic]
ik 1000 dagen op GoT :?
hoe kom je daaraan? eenvoudige rekensom of typische moderator info?
Whaa :D cool, idd 1000 dagen op GoT

Hangloozz: Bookmark [url="http://gathering.tweakers.net/~kees/top100/"]http://gathering.tweakers.net/~kees/top100/[/url] ff ;)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

Op donderdag 25 juli 2002 15:08 schreef Hangloozz het volgende:
hmmz, gaat het opvallen, met die DTD topics :? ;)
De pagina doet het in Mozilla 1.1b nu wel (bijna) goed met XHTML 1.0. transitional DTD.

Alleen het bovenste lijntje sluit niet aan, maar dat komt door een <br />. Ik weet wel dat er een nieuwe rendervorm is geintroduceerd die verschillende problemen oplost met bepaalde DTD's. Gelezen bij [url="http://evolt.org/article/New_DOCTYPE_sniffing_in_upcoming_Mozilla_releases/1/32271/"]Evolt[/url]
Pagina: 1