Verfasst am 18.02.2008 23:56:31 Uhr temporär ...
Verfasst am 18.02.2008 19:39:30 Uhr Bald ist jede Webseite invalide (ungültig) Eben habe ich mal eine HTML-Prüfseite entdeckt, die mich das Schaudern lehrt. Es ist nicht nur stets der Code zu verbessern, nein, "alle Nase lang" gibt es auch eine verbesserte HTML-Gebrauchsvorschrift, die einen Individual-Webmaster bald "den Gar ausmacht". In ferner Zukunft gehört das Web nur noch den "großen Playern", die sich jedes Code-knowhow zur Zertifizierung vorlegen lassen und dadurch das Knowhow erlernen, was pfiffige Individualisten weltweit in kostenloser Eigenbefriedigung ersonnen haben. Der Code der Individualisten wird bald ungültig, da eine neue HTML-Vorschrift gewisse Tagnamen und Attributnamen für unerwünscht erklärt. So schnell kommt ein Individualist nicht mit dem Ändern nach.
Allein mein Vorbild, z.B. die freenet-Weblogseite http://weblog.freenet.de entspricht zur Zeit nicht den Validitätsvorschriften von http://www.validome.org/validate, wäre also ungültig. Ganz betroffen und deprimiert stelle ich mich gleich in eine Ecke und heule über meine Unfähigkeit, meine Webseiten valide zu halten. Aber was sagt schon die Wissenschaft zum Hummelflug? Wenn die Hummel wüsste, dass sie nach den Gesetzen der Naturwissenschaft nicht fliegen könnte, würde sie sich in ihr Erdloch verkriechen. So aber weiß sie es nicht und fliegt trotzdem.
Ob diese weblog-Seite in Zukunft dieser Vorschrift entspricht? (Testlink für weblog.freenet.de).
Wenn wenigstens mal ein(e) arbeitslose(r) Programmierer(in) die vielen Flüchtigkeitsfehler "fehlende Gänsefüßchen / Anführungsstriche" beseitigen würden, die diese Validitätsprüfungen heute von diversen Webseiten auflisten. Kein Wunder, dass mein Internet-Explorer so lange am Code herumprüft, bis er die Webseite für meine Augen darstellt.
Ganz verzückt bin ich, dass http://www.validome.org/validate den selbst gesetzten Gültigkeitsvorschriften entspricht. Aber zu früh gefreut:
Meine eigene Miniwebseite http://www.c-vitamine.de/index.html(nachfolgende Angaben zu Zeilen und Spalten sind nur beispielhaft)Jetzt wollte ich es aber mal wissen . Zwei Warnungen:- In der Dokumententypdeklaration konnte keine System-ID (URL oder Pfadangabe zur DTD) gefunden werden.
- Zeile 44, Spalte 56: Kann keinen Systembezeichner für die allgemeine Entität "style" erzeugen
.
Diese Deklaration in der Titelzeile ist jetzt auch nicht mehr gut genug:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
Jetzt muss dort zusätzlich noch die "Hotline" hinein, z.B.:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> Bei HTML4.01 könnte diese Hotline-Adresse so lauten: "http://www.w3.org/TR/html4/strict.dtd" Aus lauter Langeweile werde ich neben der validierten xhtml-Fassung noch eine validierte html-Fassung archivieren, damit man den Unterschied leichter entdeckt.
Und es wurden vier Fehler gemeldet, die sich alle auf die den PageRank-Counter (in meiner Zeile 44+45) beziehen (Fehlerstelle: 'src="http://www.ranking-hits.de/?ref=www.c-vitamine.de&style=40" '): - Zeile 44, Spalte 57 (s): Allgemeine Entität "style" nicht definiert und keine Standardentität definiert
- Zeile 44, Spalte 62 (Gleichheitszeichen): Referenz auf Entität "style", für welche kein Systembezeichner erzeugt werden konnte
- Zeile 44, Spalte 56 (&): Die Entität wurde hier definiert
- Zeile 45, Spalte 61: Slash "/" am Ende eines Starttag gefunden. Diese Syntax ist, im Gegensatz zu XHTML, in HTML nicht erlaubt
Und nu kommst Du !?: auf der Vorbild-Musterseite http://www.validome.org/validate wird dem Webmaster genau empfohlen (Zitat!):Um Ihren Besuchern / Lesern zu zeigen, dass Sie ein Dokument erstellt haben, welches den bestehenden Standards entspricht, können Sie eines dieser Validome-Piktogramme mit dem folgenden HTML-Code in dieses einfügen: ... . Und was lese ich dort für einen Code? Alle sind nach diesem Muster gestrickt: <p><a href=""><img style="..." src="..." alt="..." width="..." height="..." /></a></p> Ich wurde doch soeben aus gleichem Munde belehrt, dass man das "Slash" im HTML-Code nicht benutzen solle!?
Darf ich den eingebundenen Code verschlimmbessern? Da kann man noch so sauber programmieren und wenn man fremden Code einbindet, dann hat man gleich nur Ärger.
Will man die erste obige Warnung verbessern, indem man den DTD von Validome übernimmt, dann hat man nicht nur Warnungen am Hals, nein dann enthält die Webseite gleich einen schweren Fehler.
Die charset-Angabe ist nicht mehr so erlaubt: <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">, weil
Dieses XHTML 1.0-Dokument wurde mit dem MIME-Type text/html ausgeliefert, der jedoch nicht verwendet werden sollte, wenn das Dokument nicht den Richtlinien zur Kompatibilität mit HTML entspricht.
Hiernach folgt messerscharf, dass keine (gültigen) Angaben zum Charset vorliegen.In diesem XHTML-Dokument wurde keine Angabe zu einer Zeichenkodierung gefunden. ... und sich gleich verbessert, dass das Analyse-Programm nun doch etwas Verwertbares gefunden hat: Allerdings wurde ein Meta-Element mit der Angabe zu einer Zeichenkodierung gefunden (iso-8859-1). Dann werde ich wie folgt belehrt: Diese Art der Kodierungsangabe wird bei XHTML-Dokumenten nicht verarbeitet und sollte nur zwecks Abwärtskompatiblität zu HTML vorhanden sein. Und so sollte es dann richtig sein: Fügen Sie entweder eine XML-Deklaration mit einer Angabe einer Zeichenkodierung am Anfang des Dokumentes ein (z. B. <?xml version="1.0" encoding="iso-8859-1"?>, oder veranlassen Sie Ihren Server das Senden eines entsprechenden HTTP-Header (bei PHP mit header('Content-Type: text/html; charset=iso-8859-1');). Ach! Und dort ist wieder das Kürzel "text/html" erlaubt ??
Weiter heisst es: Da keine gültige Kodierungsabgabe vorhanden ist, wurde dieses Dokument per Fallback mit UTF-8 verarbeitet.
und weiter unten
im Dokument befindet sich in Zeile 23 und Spalte 27 ein ungültiges Zeichen. Dieses Zeichen ist in der verwendeten Zeichenkodierung (utf-8) nicht erlaubt. Gemeint ist mit diesem schweren Fehler ein Umlaut "ü" im Wort "für" im normalen Text.
Du Automat sollst mich lehren, wie die Syntax richtiger ist und nicht zeigen, wie sie noch falscher ist.
Weiter geht's: Also diese Charset-Angabe <?xml version="1.0" encoding="iso-8859-1"?> muss in xhtml in die allererste Zeile noch vor die DTD. Die link-Tags im Dateikopf müssen anstatt mit ">" entweder mit "/>" enden oder der alten Form ">" muss ein </link> nachgestellt werden. Analoges gilt zu den Meta-Tags. Die link-Tag und Meta-Tag-Angaben müssen komplett kleingeschrieben werden, nicht jedoch die in "Anführungsstriche" gesetzten Attribut-Inhalte. Außerdem müssen die Tags <br> des Html nun durch <br />-Tags im xhtml ersetzt werden. Analoges gilt z.B. für das img-Tag.
Und was bleibt übrig? Wieder die gleiche Fehlerstelle von PageRank. Durch Probieren ergibt sich, dass Ersetzung von & durch & sowie das Setzen der Attribut-Inhalte in Anführungsstriche die letzten Fehler beseitigt. So wäre die Unfehlerstelle nach validate.txt richtig: 'src="http://www.ranking-hits.de/?ref='www.c-vitamine.de'&style='40'" ' Nur ein Hinweis hält sich hartnäckig: Dieses XHTML 1.0-Dokument wurde mit dem MIME-Type text/html ausgeliefert, der jedoch nicht verwendet werden sollte, wenn das Dokument nicht den Richtlinien zur Kompatibilität mit HTML entspricht. Doppelte Verneinung! Ich mag das nie nicht! Sinngemäß könnte man formulieren: "wenn Sie nicht mit Dollar bezahlen wollen, sollten Sie nicht angegeben, dass Sie mit Dollar bezahlen wollen!" - Alles klar? Wieder mehr Wissensmüll! Und was wirklich wichtig ist, wird nicht gemacht .... (dp) (3,5h)
Hinweis: Dieser Beitrag enthält zu Dokumentationszwecken nichtausführbaren HTML-Code, welcher nicht gesondert farblich gekennzeichnet ist. Es wird empfohlen, ihn vor dem Ändern oder Weiterverarbeiten im Weblog-Ordner "edit_entry.php" aus einer offline-Textdatei oder aus dem Quellcode dieses Beitrages herauszuextrahieren.
Adminbereich
| Diese Seite bookmarken
| Weitersagen |