• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

DOCTYPE-Verwirrung

planet4

New member
Hallo,
kann mir mal jemand etwas erklären in Sachen DOCTYPE..
oder mir einen link posten...
ich habe bisher immer diesen DOC. benutzt:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

dann hatte ich so einen link im head stehen:

<link rel="prev" href="start.php" />

und bekam beim Validator eine Fehlermeldung (Ende-tag vom head wäre da, obwohl
kein geöffnetes tag da sei ... bezieht sich aber auf den link oben)

wenn ich den link so abändere:

<link rel="prev" href="start.php">

ist alles ok.

kann ich also diese Art, einen link zu schließen oder auch ein <br />
nur benutzen, wenn ich einen DOCTYPE habe, in dem etwas mit XHTML steht?
und kann das dann eigentlich annähernd jeder Browser interpretieren??

ich wäre sehr dankbar für ein bisschen Klarheit in dieser Sache.
vielleicht ist das hier auch schon mal durchgekaut worden, ich hab nix gefunden...

planet4.
 
Hi,

die Beschreibung
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> verweist auf eine DTD.
Eine DTD ist eine DocTypeDefinition.

Das ganze kommt vom grossen maechtigen XML bzw. SGML her. HTML ist sozusagen ein kleiner Bruder von denen. Dennoch kann ein HTML Dokument und muss ein XHTML Dokument eine solche DTD referenzieren.

Deine Frage: kannst Du einfach aufloesen, indem Du beim W3C in die entsprechende DTD reinschaust. Dort sind die sogenannten ENTITIES, also die "tagnamen" fuer HTML, Ihre Attribute und ob oder nicht diesen geschlossenen muessen oder ob diese bspw. wie im Falle von <br /> Null CDATA enthalten koennen definiert.

Aus meinem frueheren Leben wuerde ich sagen, das HTML 4.0 Transitional ziemlich schlampig mit dem DOM als Grundlage von wohlgeformten XML umgeht, deshalb ist das mit dem nicht Schliessen von Tags so spezifiziert.

Stren genommen kannst Du in einem XML also auch einem HTML Dokument nur verwenden was in der DTD steht. HTML bildet bei seiner Darstellung in Browsern eine Ausnahme, weil das sehr viel verziehen wird, auch nicht DTD-konformes XML.

ZUr Frage: "kann ich also diese Art, einen link zu schließen oder auch ein <br />
nur benutzen, wenn ich einen DOCTYPE habe, in dem etwas mit XHTML steht?
und kann das dann eigentlich annähernd jeder Browser interpretieren??"

XHTML koennen mit gestalterischen UNterschieden in dem Fall, dass man XHTML wirklich ausreizt nur neueste Browsereinigermassen gleichaussehend interpretieren.

Das gute an XHTML ist fuer, mich dass keine Inhalte oder daten verloren gehen, maximal die Gestaltung. Wenn einem die Gestaltung wichtig ist muss man vorsichtig sein und testen.

Ich habe unter http://www.w3.org/ meine grafisch unanspruchsvolle Seite laufen. Die sollte fast durchgaengig als korrektes XHMTL 1.1 validieren.

Ich moechte Sie aber nicht in Netscape 4 ansehen.

Man kann XHTML auch als Dokumententypdeklaration verwenden und dann die Features nicht ausreizen, was so div und Positionierung mit CSS angeht. Dann kann man trotzdem noch "Tabellen-HTML" schreiben und den <link> sofort schliessen (ist dann Pflicht).
(Da werde ich demnaechst auch Infos zu XML und XSLT Umwandlungen unter anderen in ein XHTML Zielformat posten.)

Wenn Du es austesten willst beschaff Dir einen sogenannten DTD-aware XML Editor. Dem teilst Du die anzuwendende DTD mit. Dafuer sagt dieser Dir dann, welche Entities in welchem Scope erlaubt sind laut DTD. Macht das Arbeiten echt leichter.

Gruesse
torisan

[EDIT=RoyalKnight]Werbelink entfernt[/EDIT]
 
Zuletzt bearbeitet von einem Moderator:
Zurück
Oben