HTML im Head
Armin
- html
0 Moe0 EKKi0 Harlequin0 Cybaer0 EKKi0 Gunnar Bittersmann0 EKKi0 Gunnar Bittersmann0 EKKi
0 Cybaer
0 Gunnar Bittersmann
Hallo zusammen,
Gibts eigentlich einen Grund, warum im Head kein HTML stehen sollte?
Funktionieren tuts ja eigentlich trotzdem, auch wenn die Daten nicht im BodyTag stehen, sondern davor, siehe
http://www.lepiforum.de/cgi-bin/lepiwiki.pl
Danke vorab und Gruss
ad
Gibts eigentlich einen Grund, warum im Head kein HTML stehen sollte?
Weil das so die Vorschrift ist, die iwann mal festgelegt wurde. D.h. dass die Browserhersteller deinem Code den Fehler zwar verzeihen, das aber auch jederzeit lassen können ohne in Schwierigkeiten zu kommen :)
Mahlzeit,
Hallo zusammen,
Gibts eigentlich einen Grund, warum im Head kein HTML stehen sollte?
Ja.
Funktionieren tuts ja eigentlich trotzdem, auch wenn die Daten nicht im BodyTag stehen, sondern davor, siehe
Sicher. Wenn der Browser so gnädig ist und über die Fehler hinwegsieht. Allerdings weiß man nie, WAS GENAU der Browser aus ungültiger Tag-Suppe macht - oder ob er überhaupt was macht. Schließlich muss er das nicht. Jedenfalls nicht, wenn's kein gültiges HTML ist.
Es funktioniert unter Umständen auch, wenn ich auf einen Brief die Anschrift hochkant auf die Rückseite in mittelgrau auf hellgrau schreibe. Vielleicht. Aber wieso den Sortiermaschinen bzw. Postmitarbeitern die Arbeit unnötig schwer machen und das Risiko eingehen, dass der Brief nicht ankommt?
Wieso also dem Browser die Arbeit unnötig schwer machen und riskieren, dass der Benutzer nicht das sieht, was der Autor gern möchte?
MfG,
EKKi
Yerf!
Funktionieren tuts ja eigentlich trotzdem, auch wenn die Daten nicht im BodyTag stehen, sondern davor, siehe
http://www.lepiforum.de/cgi-bin/lepiwiki.pl
Das funktioniert aber nicht so, wie du es dir denkst. Ein HTML-Validator wird dir sagen, was passiert: Durch das erste Element, das nicht im HEAD stehen darf wird dieser imlizit geschlossen und der BODY geöffnet. Die späteren </head><body> Tags werden als fehlerhaft ignoriert (Der HEAD ist ja schon zu und in einem BODY darf kein zweiter sein...)
Gruß,
Harlequin
Hi,
Funktionieren tuts ja eigentlich trotzdem, auch wenn die Daten nicht im BodyTag stehen, sondern davor,
Die HEAD-Tags sind optional. Die BODY-Tags ebenso. Die HTML-Tags übrigens auch.
<title></title>
Text
ist ein korrektes HTML-Dokument (TITLE-Tags sind *nicht* optional).
Wenn Du nach dem "Text" einen HEAD-Endtag oder ein BODY-Starttag einfügst, ist das falsches HTML - der BODY beginnt bereits automatisch mit "Text".
Soweit die Theorie, um diese Praxis zu erklären. Aber: Text *vor* dem TITLE-Element dürfte eigentlich nicht angezeigt werden. Es gibt dennoch AFAIK keinen HTML-Browser, der sich jemals an diese Vorschrift gehalten hätte (übrigens ein Grund, warum Script- und CSS-Code im HEAD auskommentiert wird: Browser, die SCRIPT und STYLE nicht interpretieren, stellen den Code als Inhalt dar).
Also: gut zu wissen, daß dem so ist, aber einen Vorteil hat man durch diesen Unsinn ja ohnehin nicht.
Gruß, Cybaer
Mahlzeit,
Die HEAD-Tags sind optional. Die BODY-Tags ebenso. Die HTML-Tags übrigens auch.
<title></title>
Textist ein korrektes HTML-Dokument (TITLE-Tags sind *nicht* optional).
Nicht nach "HTML Strict" ... ;-)
MfG,
EKKi
@@EKKi:
Die HEAD-Tags sind optional. Die BODY-Tags ebenso. Die HTML-Tags übrigens auch. […] (TITLE-Tags sind *nicht* optional).
Nicht nach "HTML Strict" ... ;-)
Doch, auch in HTML 4.01 Strict. Sowohl Start- und Endtags der 'html'-, 'head'- und 'body'-Elemente sind optional. Weder Start- noch Endtag des 'title'-Elements sind optional.
Live long and prosper,
Gunnar
Mahlzeit,
Doch, auch in HTML 4.01 Strict. Sowohl Start- und Endtags der 'html'-, 'head'- und 'body'-Elemente sind optional. Weder Start- noch Endtag des 'title'-Elements sind optional.
Komisch - der Validator sagt zu Folgendem "This page is not Valid HTML 4.01 Strict!" (wenn ich den entsprechenden DOCTYPE angebe):
-----8<-----8<-----8<-----
<title></title>
Text
----->8----->8----->8-----
Dann hat der Validator die DTD wohl nicht aufmerksam genug gelesen ... ;-)
MfG,
EKKi
@@EKKi:
"This page is not Valid HTML 4.01 Strict!"
-----8<-----8<-----8<-----
<title></title>
Text
----->8----->8----->8-----Dann hat der Validator die DTD wohl nicht aufmerksam genug gelesen ... ;-)
Doch, hat er. Du auch? ;-)
Siehe https://forum.selfhtml.org/?t=166324&m=1084806 oben.
Live long and prosper,
Gunnar
Mahlzeit,
"This page is not Valid HTML 4.01 Strict!"
-----8<-----8<-----8<-----
<title></title>
Text
----->8----->8----->8-----Dann hat der Validator die DTD wohl nicht aufmerksam genug gelesen ... ;-)
Doch, hat er. Du auch? ;-)
Sicher. Deswegen hab ich ja auch behauptet, dass obiges Code-Beispiel von Cybaer eben KEIN gültiges HTML 4.01 Strict ist. Dem hast Du widersprochen - und das ist und bleibt falsch. Es ist KEIN gültiges HTML 4.01 Strict.
Siehe https://forum.selfhtml.org/?t=166324&m=1084806 oben.
Huch? An der Stelle siehst Du das ja genauso wie ich - wieso bist Du dann hier anderer Ansicht?
MfG,
EKKi
@@EKKi:
Sicher. Deswegen hab ich ja auch behauptet, dass obiges Code-Beispiel von Cybaer eben KEIN gültiges HTML 4.01 Strict ist. Dem hast Du widersprochen
Nö. Ich hatte deiner Antwort "Nicht nach "HTML Strict" auf "Die HEAD-Tags sind optional. Die BODY-Tags ebenso. Die HTML-Tags übrigens auch. [...] TITLE-Tags sind *nicht* optional" widersprochen.
Dachte ich jedenfalls. Wenn du "Nicht nach "HTML Strict" auf "'<title></title>Text' ist ein korrektes HTML-Dokument" bezogen haben wolltest, hättest du etwas besser zitieren sollen.
Live long and prosper,
Gunnar
Mahlzeit,
Dachte ich jedenfalls. Wenn du "Nicht nach "HTML Strict" auf "'<title></title>Text' ist ein korrektes HTML-Dokument" bezogen haben wolltest, hättest du etwas besser zitieren sollen.
Hm ... ich habe mein "Nicht nach "HTML Strict"" eigentlich auf den letzten vollständigen zitierten Satz bezogen - und das war "'<title></title>Text' ist ein korrektes HTML-Dokument".
Aber egal. Das nächste mal zitiere ich vielleicht besser ...
MfG,
EKKi
Hi,
Komisch - der Validator sagt zu Folgendem "This page is not Valid HTML 4.01 Strict!" (wenn ich den entsprechenden DOCTYPE angebe):
In 4.01 Strict darf der BODY keinen Textknoten haben! Packe "Text" in ein DIV-Element, und es paßt (oder der Validator arbeitet falsch).
Gruß, Cybaer
Mahlzeit,
Komisch - der Validator sagt zu Folgendem "This page is not Valid HTML 4.01 Strict!" (wenn ich den entsprechenden DOCTYPE angebe):
In 4.01 Strict darf der BODY keinen Textknoten haben! Packe "Text" in ein DIV-Element, und es paßt (oder der Validator arbeitet falsch).
Wieso sollte ich? Das Beispiel war doch von Dir ... ;-)
MfG,
EKKi
Hi,
Wieso sollte ich? Das Beispiel war doch von Dir ... ;-)
Ja - und es war gültiges HTML. Und für 4.01 strict ist das andere Beispiel gültig. ;-)
Gruß, Cybaer
@@Cybaer:
Browser, die SCRIPT und STYLE nicht interpretieren, stellen den Code als Inhalt dar).
Und wieder einmal „vergaßest“ du zu erwähnen, dass es solche Browser nicht mehr gibt und die Auskommentierung deshalb völlig überflüssig ist.
Live long and prosper,
Gunnar
Hi,
Und wieder einmal „vergaßest“ du zu erwähnen, dass es solche Browser nicht mehr gibt und die Auskommentierung deshalb völlig überflüssig ist.
Ist ja gut. Ich weiß doch, daß Du alles weißt und den vollen Überblick hast. Ich kann da nicht mithalten, und verweise lieber nur auf unsere letzte diesbezügl. Diskussion im Archiv, wo ich Gegenbeispiele nannte ... =:-)
Gruß, Cybaer
Mahlzeit,
Und wieder einmal „vergaßest“ du zu erwähnen, dass es solche Browser nicht mehr gibt und die Auskommentierung deshalb völlig überflüssig ist.
Mitnichten! Es gibt sie noch[*] ... zwar selten "in the wild" und deshalb vernünftigerweise vernachlässigbar - aber ihre durchaus vorhandene Existenz zu verleugnen halte ich für sehr gewagt und unzulässig. :-)
MfG,
EKKi
[*] Z.B. als Archiv auf einer meiner Platten ;-)
Hi,
Mitnichten! Es gibt sie noch[*] ... zwar selten "in the wild" und deshalb vernünftigerweise vernachlässigbar - aber ihre durchaus vorhandene Existenz zu verleugnen halte ich für sehr gewagt und unzulässig. :-)
Ich habe seinerzeit (neben der prinzipiellen semantischen Trennung von Content und Code) angeführt, daß z.B. Nicht-Browser-Clients generell in diese Kategorie fallen können (z.B. PHP mit seinem strip_tags(), welches HTML-Tags und Kommentare entfernt, aber eben nicht CSS- und JS-Code, sofern er nicht auskommentiert ist).
Auch wage ich keine Abschätzung, was es alles an Clients geben mag. Aber Gunnar kennt alle und alles (jetzt und in Zukunft) - da kann man sich drauf verlassen (wenn man mag)! >:->
[*] Z.B. als Archiv auf einer meiner Platten ;-)
Ach, bei dir auch? ;)
Gruß, Cybaer