Nochmal Doctype: Kombinationen frameset und loose wegen Font im Noframebereich..
Stefan Roßkopf
- html
Hi,
nachdem wir in einem anderen Thread ja nun ausfuehrlich darueber diskutiert haben (bzw. noch diskutieren), wie eine Doctype aussehen muss- stehe ich nun bereits vor einem weiteren Problem bei der Korrektur meiner www.kiezkicker.de- Seite- die dem Test gestern ja nicht standhielt :o)
Ich habe in einer Framesetdefinition auch noch Fonttags (im Noframes- Bereich). Welcher Doctype waere in diesem Fall der richtige?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN" "http://www.w3.org/TR/REC-html40/frameset.dtd">, weil ich ein Frameset definiere, oder ist es <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">, weil ich ein Stylesheet bzw. Fonttags im Noframesbereich der Framesetdefinition benutze?
Aehm- die englischen Texte von w3.org nutzen mir nicht viel- mein englisch ist dafuer wohl nicht ausreichend (ja, es gibt Leute, die zwar html benutzen, aber deren Englisch zu mies ist, technische Beschreibungen darueber zu verstehen ;-)
Ich koennte die Fonttags entfernen und mich so vor dieser Fragestellung druecken- aber das interessiert mich nun doch. :)
Stefan
Moin
Ich habe in einer Framesetdefinition auch noch Fonttags (im Noframes- Bereich). Welcher Doctype waere in diesem Fall der richtige?
Und ich möchte, dass es dunkel bleibt, wenn die Sonne scheint.
Ich koennte die Fonttags entfernen und mich so vor dieser Fragestellung druecken- aber das interessiert mich nun doch. :)
Ich könnte jetzt die Augen schließen und mich so vor dieser Fragestellung drücken .....
Im Ernst: http://www.w3.org/TR/html4/present/frames.html#edef-NOFRAMES besagt, dass du mit
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
auch das Element NOFRAMES benutzen kannst. Und innerhalb NOFRAMES kannst du wiederum mit dem Attribut "style" arbeiten http://www.w3.org/TR/html4/present/styles.html#adef-style. Deshalb "brauchst" du also kein Element FONT.
Bleibt die Frage, ob es ein noframes-fähigen css-fähigen Browser gibt ? Oder ob es Pauli-Fans gibt, die sich vor einem nicht www-konformen Frameset ängstigen - FC Bayern-Fans vielleicht schon eher ...
Swen
CI vkönnte mich jetzt
Stefan
Im Ernst: http://www.w3.org/TR/html4/present/frames.html#edef-NOFRAMES besagt, dass du mit
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
auch das Element NOFRAMES benutzen kannst. Und innerhalb NOFRAMES kannst du wiederum mit dem Attribut "style" arbeiten http://www.w3.org/TR/html4/present/styles.html#adef-style. Deshalb "brauchst" du also kein Element FONT.Bleibt die Frage, ob es ein noframes-fähigen css-fähigen Browser gibt ? Oder ob es Pauli-Fans gibt, die sich vor einem nicht www-
konformen Frameset aengstigen - FC Bayern-Fans vielleicht schon eher ...
Ob es einen entsprechenden Browser gibt, entzieht sich meiner Kentniss, ich kenne nicht alle Browser/ Suchmaschinen/ was auch immer, aber moeglich waere es, und ich moechte meine Seite gerne mit allen Varianten zumindestens nutzbar halten.
Danke fuer Deine Antwort (die weniger polemisch genauso hilfreich gewesen waere- ich versuche halt noch dazu zu lernen).
Auch wenn ich jene w3.org- Seiten nach wie vor nicht so richtig verstehe, der Hinweis auf style hilft mir schonmal weiter.
CI vkönnte mich jetzt
Wer oder was ist CI?
Gruss, Stefan
Moin
Danke fuer Deine Antwort (die weniger polemisch genauso hilfreich gewesen waere- ich versuche halt noch dazu zu lernen).
Entschuldigung. Es war nicht polemisch gemeint, ich fand deine Frage sogar sehr interessant und habe selbst erstmal überlegt.
CI vkönnte mich jetzt
Wer oder was ist CI?
<g>Keine Ahnung. Ich habe wohl den Text, der sich vor dem Cursor herschob, nicht gelöscht. Hiermit erteile ich mir selbst ein http://learn.to/quote</g>
Gruß aus Kiel
Swen
P.S. Pure Neugier: Was hat dich hierher geführt ? Ich kenne deinen Namen bislang nur aus dciwam - und hege das (falsche ?) Vorurteil, das die "einen" was gegen die "anderen" haben
Danke fuer Deine Antwort (die weniger polemisch genauso hilfreich gewesen waere- ich versuche halt noch dazu zu lernen).
Entschuldigung. Es war nicht polemisch gemeint, ich fand deine Frage sogar sehr interessant und habe selbst erstmal überlegt.
Gut, dann beruht das auf ein Missverstaendnis :-)
P.S. Pure Neugier: Was hat dich hierher geführt ? Ich kenne deinen Namen bislang nur aus dciwam - und hege das (falsche ?) Vorurteil, das die "einen" was gegen die "anderen" haben
In meinem Fall falsch (auch wenn man meinen koennte, es stimme, weil ich momentan nicht mehr in NG schreibe, hat aber andere Gruende).
Ist Zufall. Aber kurz zur Erklaerung: Ich sah irgendwo einen Hinweis auf Stefan Muenz und der derzeitigen Abmahnwelle, und habe da indirekt selbst grade mit zu tun (bzw. ein Bekannter von mir). Da habe ich halt mal wieder hier reingeschaut, mir jetzt eben den Browser gesaugt (irgendwie ja echt komfortabler...).
er grund, warum ich meine letzten Fragen nicht in dciwam gepostet habe, ist einfach, das mir hier die Antwortzeiten kuerzer erscheinen (sieht man ja nun grade wieder). Desweiteren erscheinen mir die Leute in der NG teilweise ein wenig "Hardcoremaessig", was den Einsatz bestimmter Techniken/ Programme angeht- naja, derartige Postings habe ich hier in der kurzen Zeit, wo ich aktiv mitlese/schreibe, bisher nicht gesehen.
Sprich: Der Umgang untereinander in Verbindung mit der Antwortzeit treiben mich momentan eher hierher.
Reicht das als Erklaerung? :)
Hallo Stefan!
er grund, warum ich meine letzten Fragen nicht in dciwam gepostet habe, ist einfach, das mir hier die Antwortzeiten kuerzer erscheinen (sieht man ja nun grade wieder). Desweiteren erscheinen mir die Leute in der NG teilweise ein wenig "Hardcoremaessig", was den Einsatz bestimmter Techniken/ Programme angeht- naja, derartige Postings habe ich hier in der kurzen Zeit, wo ich aktiv mitlese/schreibe, bisher nicht gesehen.
Sprich: Der Umgang untereinander in Verbindung mit der Antwortzeit treiben mich momentan eher hierher.
Reicht das als Erklaerung? :)
Und wie das als Erklärung reicht! *g*
Danke und Grüße
Thomas
Hallo in den Norden
Bleibt die Frage, ob es ein noframes-fähigen css-fähigen Browser gibt ? Oder ob es Pauli-Fans gibt, die sich vor einem nicht www-konformen Frameset ängstigen - FC Bayern-Fans vielleicht schon eher ...
raeusper raeusper! :-)
Gruesse aus dem Sueden
Wilhelm
der jetzt gucken geht, wie die Madrilenen vermoebelt werden!
Hi Stefan,
die richtige für Dich ist <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">, denn auch hier ist <frameset> bzw. <frame> definiert. Mal zum gucken wie die DTD aussieht: http://www.w3.org/TR/html4/sgml/loosedtd.html
Grüße,
Utz
Moin Utz,
die richtige für Dich ist <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">, denn auch hier ist <frameset> bzw. <frame> definiert. Mal zum gucken wie die DTD aussieht: http://www.w3.org/TR/html4/sgml/loosedtd.html
beim Nachlesen wollte ich dir schon recht geben, aber dann wollte der Valligator das nicht akzepztieren:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>test</title>
</head>
<frameset rows="30%,70%">
<frame src="oben.htm">
<frame src="unten.htm">
<noframes>
Ihr Browser zeigt Ihnen meine frames nicht an
</noframes>
</frameset>
</html>
Spinnt der Valligator ? Oder mach ich was falsch ?
Swen
Hallo Swen,
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>test</title>
</head>
<frameset rows="30%,70%">
<frame src="oben.htm">
<frame src="unten.htm">
<noframes>
Ihr Browser zeigt Ihnen meine frames nicht an
</noframes>
</frameset>
</html>Spinnt der Valligator ? Oder mach ich was falsch ?
Laut Frameset DTD:
-->
<!ENTITY % HTML.Version "-//W3C//DTD HTML 4.01 Frameset//EN"
-- Typical usage:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
<html>
<head>
...
</head>
<frameset>
...
</frameset>
</html>
-->
Dort steht auch, daß die Frameset DTD identisch mit der Transitional DTD ist, bis eben auf das, was in <HTML></HTML> stehen darf, also "FRAMESET" statt "BODY"
In den einzelenen Frame-Dokumenten, also in deinem Beispiel oben.htm und unten.htm kann dann meines Wissens der DOCTYPE wahlweise als strict oder transitional deklariert werden, da sich die DOCTYPE Definition ja nicht vererbt.
Grüßle,
Bea
Moin Bea,
Dort steht auch, daß die Frameset DTD identisch mit der Transitional DTD ist
Oder ist "identical to" nicht mit "identisch" sondern mit gleichbedeutend im Sinne vom "umfasst auch" zu verstehen. Da (siehe mein posting an Utz) es "andersherum" nicht stimmt: loose.dtd umfasst nicht frameset.dtd ?
Swen
Hallo Swen,
Dort steht auch, daß die Frameset DTD identisch mit der Transitional DTD ist
Oder ist "identical to" nicht mit "identisch" sondern mit gleichbedeutend im Sinne vom "umfasst auch" zu verstehen. Da (siehe mein posting an Utz) es "andersherum" nicht stimmt: loose.dtd umfasst nicht frameset.dtd ?
Also, so wie ich das verstanden habe, ist der Unterschied zwischen der loose und der Frameset DTD, daß laut der Frameset DTD kein BODY (vor dem FRAMESET) stehen darf und dafür ein FRAMESET stehen muß und ein NOFRAMES stehen kann (in dem man dann jeglichen Transitional-DTD-konformen Blödsinn anstellen darf).
Grüßle,
Bea
Hi Swen,
so weit meinem schwachen Geist vertraut werden kann, ist Dein Frameset-Beispiel korrektes HTML 4.01 sowohl Transitional als auch Frameset. Sagt zumindest http://www.w3.org/TR/html401/present/frames.html (und auch nochmal explizit, dass es auch transitional ist!).
Ich vermute mal, mit der Frameset-DTD oben dran schnurrt alles durch? Hmmm...als Arbeitshypothese würde ich daher erst mal annehmen, dass der Validator da wohl was nicht richtig macht.
Grüße,
Utz
Moin Utz,
ich erklär mir das jetzt mal so: die frameset-dtd umfasst die loose-dtd, nicht aber andersherum. Wenn dem aber so ist: warum meckert der Valligator dann das fehlende BODY-Element im NOFRAME-Element nicht an : http://www.w3.org/TR/html401/sgml/loosedtd.html#noframes.content- oder verstehe ich jetzt die Syntax der dtd falsch ?
Hmmm...als Arbeitshypothese würde ich daher erst mal annehmen, dass der Validator da wohl was nicht richtig macht.
Gute Idee ;-)
Swen
Hi Swen,
jetzt wird mir aber zunehmend schwindelig (v.a. weil's jetzt dann doch eigentlich mein DTD-Verständnis übersteigt) - diese Kleinigkeit fand ich dann noch in der Transitional-DTD: http://www.w3.org/TR/html401/sgml/loosedtd.html#HTML.Frameset, und im Vergleich dazu dann http://www.w3.org/TR/html401/sgml/framesetdtd.html - das klingt für mich so, als würden in der Loose-DTD Frames zwar im Prinzip definiert, dann aber wieder ignoriert (??), und die Frameset-DTD referenziert die Loose-DTD und schaltet halt nur die Ignorierung wieder aus (????) - oder hab ich das völlig falsch verstanden?
Durch das ganze Kuddelmuddel ist aber seltsamerweise noch <noframes> in der Loose-DTD drin (<frameset> aber nicht mehr(????)) - und so kommt es, dass in http://www.w3.org/TR/html401/present/frames.html ständig von transitional gesprochen wird, aber halt nur im Zusammenhang mit <noframes>.
Das hieße: der Validator arbeitet völlig richtig, und ich bin zu blöd, DTDs zu lesen. Na, fröhlichen Abend dann noch...
Grüße,
Utz
Hallo Utz!
die richtige für Dich ist <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">, denn auch hier ist <frameset> bzw. <frame> definiert. Mal zum gucken wie die DTD aussieht: http://www.w3.org/TR/html4/sgml/loosedtd.html
Falsch!
Denn dort (im DTD) steht es deutlich:
<!-- Feature Switch for frameset documents -->
<!ENTITY % HTML.Frameset "IGNORE">
und weiter unten:
<![ %HTML.Frameset; [
Das heisst im Tarnsitional-DTD wird das was nach
<![ %HTML.Frameset; [
kommt ignoriert. Das gilt auch für 'strict'.
im frameset.dtd steht dann:
<!ENTITY % HTML.Frameset "INCLUDE">
<!ENTITY % HTML4.dtd PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
Womit 1) alles was im Bereich <![ %HTML.Frameset; [ definiert wurde, wird inkludiert und 2) auch die Transitional-DTD (loose.dtd)includiert wird.
Grüße
Thomas
PS: richtig ist also:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
Hi Thomas,
demzufolge war meine Vermutung in http://www.teamone.de/selfaktuell/forum/messages/69638.html also doch richtig, auch wenn ich schon an meinem Verstand am Zweifeln war (die Beeinträchtigungen sind immer noch am schlechter Deitsch zu sehen :-). Thanks a lot!
Grüße,
Utz
Moin Utz,
also ich finde, wir können stolz auf uns sein :-) Wir waren doch schon sehr knapp dran an der Lösung.
Vielleicht findet sich ja jetzt noch jemand, der mir/uns das Problem mit dem Body erklären kann. Im Netz habe ich zwischenzeitlich noch http://www.htmlhelp.org/reference/html40/frames/noframes.html ausgegraben. Auch hier wird ein BODY-Element im NOFRAME verlangt: <q>When used within a FRAMESET, NOFRAMES must contain a BODY element</q> Und warum meckert der Valligator ein fehlendes BODY-Element nicht an ?
Swen
Hi,
also ich finde, wir können stolz auf uns sein :-) Wir waren doch schon sehr knapp dran an der Lösung.
Na gut, dann sind wir mal stolz auf uns :-)))
»» Und warum meckert der Valligator ein fehlendes BODY-Element nicht an ?
Tja, laut dem Beispiel auf http://www.w3.org/TR/html4/present/frames.html#h-16.4.1 muss laut HTML 4.01 auch kein <body>-Element rein. Also scheint es wohl so zu sein, dass mein/unser Verständnis von <!ENTITY % noframes.content "(BODY) -(NOFRAMES)"> einfach falsch ist :-(((
Grüße,
Utz
Hallo Utz!
»»http://www.w3.org/TR/html4/present/frames.html#h-16.4.1 muss laut HTML 4.01 auch kein <body>-Element rein. Also scheint es wohl so zu sein, dass mein/unser Verständnis von <!ENTITY % noframes.content "(BODY) -(NOFRAMES)"> einfach falsch ist :-(((
;-))
Na ja. es stimmt ,dort steht das. Aber was genau steht dort?
1)
<![ %HTML.Frameset; [
<!ENTITY % noframes.content "(BODY) -(NOFRAMES)">
]]>
<!ENTITY % noframes.content "(%flow;)*">
1)trifft nur dann wenn folgendes zutrifft: <!ENTITY % HTML.Frameset "INCLUDE">
2) dazu sagt schon auch der HTML Spez. etwas:
===cut===
NOFRAMES may be used, for example, in a document that is the source of a frame and that uses the transitional DTD. This allows authors to explain the document's purpose in cases when it is viewed out of the frameset or with a user agent that doesn't support frames.
===cut===
zu ad 1) nochmal:
dort wird nur das, bei der Anwendung von diesem Entity body verwendet werden darf noframes aber nicht.
sprich <noframes> darf nicht <noframes> enthalten, wohl aber <body> enthalten.
BODY wird aber wo anders definiert und zwar so:
<!ELEMENT BODY O O (%flow;)* +(INSDEL) -->
Dabei ist für uns nur folgendes interessant: BODY O O , was nichts anderes sagt, daß beide, start und end-tag weggelassen werden kann (omitted)
Das wars dann auch schon. ;-) Nun ich hoffe es wurde etwas klarer.
Grüße
Thomas
Hallo Thomas,
danke für die Aufklärung! Manchmal _hat_ man aber auch ein Brett vorm Kopf. Und: mit jedem Stück, das man (ich) dann mühsam eingetrichert gekriegt hat, tun sich tausend neue Fragen auf - so scheint also <noframes> in HTML 4.01 Transitional etwas völlig anderes zu sein als in HTML 4.01 Frameset. Ich hoffe in Bälde mal Zeit zu finden um auszuprobieren, was man mit <noframes> in HTML 4.01 Transitional so alles anstellen kann (wenn überhaupt :-)
Grüße,
Utz
Moin Thomas, moin Mitlesende (?)
das war jetzt ja harter Tobak, den du mir abverlangt hast ;-). Ich gebe zu, dass ich arge Schwierigkeiten habe, die Syntax von Begriffen wie "<![ %HTML.frameset; [" voll zu durchblicken.
Für alle, die sich dafür interessieren, hier ein Link auf ein deutschsprachige Dokumentation über XML- (und damit auch SGML-)Syntax und Grammatik http://members.aol.com/xmldoku/index.htm. Mir hat es beim Verstehen geholfen. Zum Nachschlagen, weniger wohl zum lernen, ist dieses Wörtbuch hier http://www.dosco.de/wortbuch/wortbuch.htm sicher nützlich.
Viele Grüße
Swen