<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>Page Title</title>
<link rel="stylesheet" href="style.css" type="text/css" media="screen" charset="utf-8"/>
</head>
<body>
</body>
</html>
XHTML 1.0 STRICT Seitenstruktur
Chris Coyier am
Ist es notwendig, den Doctype auf 2 Zeilen aufzuteilen, oder ist das nur zur besseren Lesbarkeit?
Welcher Zeichensatz wird mehr empfohlen – utf-8 oder ISO-8859-1?
Sollte nicht ein Leerzeichen vor den letzten Schrägstrichen (/) in den Zeilen 7 und 9 stehen, um ältere Browser zu unterstützen?
Danke.
Ich teile den Doctype nicht auf 2 Zeilen auf, es funktioniert.
Ausgezeichnet, gut,
Es ist nicht notwendig, den Doctype auf 2 Zeilen aufzuteilen, es dient der besseren Lesbarkeit.
1 – Wenn der Accept-Header explizit application/xhtml+xml enthält (mit keinem „q“-Parameter oder einem positiven „q“-Wert), liefern Sie das Dokument unter Verwendung dieses Medientyps aus. (http://www.w3.org/TR/xhtml-media-types/#media-types)
so
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
sollte sein
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
2 – Aus Gründen der Rückwärtskompatibilität wird empfohlen, vor dem letzten Schrägstrich zum Schließen von Elementen ein Leerzeichen zu lassen.
3 – Der XML-Prolog ist optional, sollte aber gemäß den XML-Spezifikationen vorhanden sein. (XHTML ist HTML + XML).
XHTML1 Strict sollte nicht „text/html“ verwenden, stattdessen sollte es verwenden
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
Laut W3C: „text/html ist hauptsächlich für HTML und NICHT für XHTML bestimmt.“ Und „XHTML-Dokumente, die als ‚text/html‘ ausgeliefert werden, werden nicht als XML verarbeitet.“
Außerdem ist der Medientyp ‚application/xhtml+xml‘ [RFC3236] der primäre Medientyp für Dokumente der XHTML-Familie.
Einfach ausgedrückt ist text/html für XHTML Strict-Dokumente nicht gültig. Es ist jedoch gültig für XHTML Transitional-Dokumente, die Aspekte von sowohl HTML 4.01 als auch XHTML 1.0 unterstützen müssen. Nur die „Strict“-Form mit dem Medientyp „application/xhtml+xml“ ist echte XHTML-Markup.
text/html wird aus Altbestandsgründen verwendet: Alte Browser geraten eher in Panik, wenn sie XHTML als XML behandeln. Jede Fehler auf der Seite verhindert die Anzeige der Seite, was sehr schlecht ist: Fehler kommen und gehen auf Live-Websites, es ist schwer, jederzeit perfekten Code zu haben. Außerdem erforderte XML früher, dass die gesamte Seite geladen wurde, bevor mit dem Rendern begonnen wurde, was zu Sekunden Wartezeit führen konnte, bevor der Benutzer die Seite sehen konnte (falls die Seite groß war oder die Verbindung langsam).
Deshalb besagen alle „korrekten“ XHTML 1.0 Strict-Beispiele immer noch, dass die Seite als text/html behandelt werden soll – dies verhindert nicht, dass ein XML-Parser die Seiteninformationen als XML verarbeitet, aber alle Browser gehen damit gut um. Es verstößt natürlich gegen den Standard, aber manchmal wiegt die Praktikabilität schwerer als die technische Perfektion.
Natürlich ist heutzutage HTML5 der Weg, es sei denn, Sie wissen, dass Sie wirklich die XML-Strictness benötigen. Sie können HTML5 ganz einfach in einer XHTML-kompatiblen Syntax schreiben, sodass es wirklich nicht mehr viele Gründe gibt, XHTML zu verwenden. Wahrscheinlich sind 99 % der neuen Websites mit HTML5 besser bedient.
„Deshalb besagen alle ‚korrekten‘ XHTML 1.0 Strict-Beispiele immer noch, dass die Seite als text/html behandelt werden soll“ ist falsch, da es Browser daran hindert, die Seiteninformationen als XML zu behandeln, da es Browser dazu zwingt, die Seite als HTML-ähnlichen Tag-Soup zu behandeln.
Es ist nicht nur „gegen den Standard“, sondern einfach kaputt. Außerdem verschleiert es den Inhalt selbst.
Wenn „Praktikabilität über technische Perfektion wiegt“, dann verwenden Sie einfach kein XHTML und stattdessen HTML5.
**Mach es einfach, Kumpel**
Dies ist eine Vorlage, die ich in meiner JavaScript-Klasse verwende, wo mein Lehrer verlangt, dass meine Aufgaben im XHTML STRICT-1-Format vorliegen. Sie enthält Abschnitte für CSS-Styling, JavaScript-Code und HTML-Markup. Das CDATA ist erforderlich, um in HTML zu validieren, damit JavaScript bei der Validierung von HTML ausgeblendet wird. Danke, dass Sie Ihres gepostet haben. Hier ist meins
Leerer Startercode
„use strict“;
/* */
/* CSS-Code hier */
„use strict“;
/* */