Dies ist eine Abbildung der Oberfläche des Open-Source HTML-Editors "Nvu". Zu sehen ist eine HTML-Seite mit 2 Zeilen Inhalt… Wie das? Es stehen doch schon 14 Zeilen Code in der Datei?
Wir wollen uns zunächst das Grundgerüst dieser Datei ansehen. Versuche dazu die nummerierten Elemente zu interpretieren. Als Hilfe kannst du dir die beiden folgenden Links :
Grundgerüst eines XHTML-Dokuments
Zum Ausprobieren und Lernen eignet sich allerdings ein Web-Editor besonders gut: htmlPlayground…
Webseiten sollten/müssen eine gültige DOCTYPE-Definition (DTD) am Anfang des (X)HTML-Documents haben, nicht nur um die richtige Definition und die damit verbundenen Konstrukte benutzen zu können, sondern um auch die Standardkonforme Rendering-Modus in den unterschiedlichen Browsern (Internet Explorer 6, Mozilla/Firefox, Opera,…) zu aktivieren. Wenn hier ein Fehler vorliegt oder die Definition einfach nur unvollständig ist (z.B. der URL-Part fehlt), dann wird der Standard-Modus nicht aktiviert, sondern anstelle dessen der Legacy Quirks Mode.
Was heißt das? Im Prinzip ist das nichts anderes, als dass man mitteilt, in welchen Dialekt man spricht, damit mein Gesprächspartner mich versteht. In diesem simplen Beispiel entspricht somit…
Die Transitional DOCTYPE-Definition beinhaltet veraltete (und abgeschaffte) Tags wie font
und center
, während Frameset DTDs für Seiten, die Frames haben, benutzt werden sollten (d.h. die Seiten, die den frameset
- und den frame
-Tag beinhalten). Unten siehst du die möglichen Definitionen für HTML 4.01 und XHTML 1.0. Diese müssen am Anfang der (X)HTML-Datei platziert werden.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
Anmerkung: Obwohl die korrekte XML-Struktur die DTD nach dem XML-Prolog erwartet, setzt ein Fehler im IE6 den Modus zurück in den Quirks-Modus, wenn vor der DOCTYPE-Definition etwas ist (mehr dazu...).
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
(Der Transitional-Modus ist der, den wir zunächst benutzen werden.)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="de-de"> <head> <title>Grundgerüst</title> <meta name="author" content="E. Alkan" /> <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" /> </head> <body> <!-- Hier kommt euer Inhalt hin --> </body> </html>