HTML 4.01 Strict - unbekannter Fehler
Alex
- html
0 Orlando0 Alex
0 Tobias Kloth0 nag
Hallo!
ich hatte die lustige Idee, meine Website von Transitional auf Strict umzustellen.
Allerdings zeigt mir der Validator bei Strict einen Fehler an dens bei Transitional nicht gab und ich kann den Fehler auch nicht nachvollziehen.
Kurzer Auszug:
<p>
<br>
<div class="head3">
Unterüberschrift
</div>
<div>
<br>
<br>
Text
</div>
</p>
da sagt er: end tag for <p> that is not open!
aber es is eindeutig open
könnt ihr mir helfen?
danke im voraus, Alex
Hi Alex,
[...] zeigt mir der Validator bei Strict einen Fehler an dens bei Transitional nicht gab und ich kann den Fehler auch nicht nachvollziehen.
<p>
<br>
<div class="head3">
Unterüberschrift
</div>
<div>
<br>
<br>
Text
</div>
</p>da sagt er: end tag for <p> that is not open!
aber es is eindeutig open
Nachdem <p> kein <div> enthalten darf, gilt es als davor geschlossen, weil der End-Tag optional ist.
http://www.w3.org/TR/html401/struct/text.html#edef-P
http://de.selfhtml.org/html/referenz/elemente.htm#p
Verwende padding-top statt <br>, <h3> statt <div> und <p> statt <div>.
Grüße,
Roland
also ich habs jetz so umgeändert, der fehler kommt aber noch immer
<p>
<br>
<p class="head3">
Unterüberschrift
</p>
<p>
<br>
Text
</p>
</p>
Gruß, Alex
Hallo Alex,
<p>
lass das <p> weg (oder ersetze es - wenn es unbedingt sein muss -- durch <div>) - ein p ist ein block-Level-Element und deswegen innerhalb von <p> nicht erlaubt.
<br>
das lässt sich durch margin-top (->[1]) ersetzen
<p class="head3">
Unterüberschrift
warum verwendest du für eine Überschrift kein <hx> (mit x=[1-6])?
Grüße aus Nürnberg
Tobias
[1] http://de.selfhtml.org/css/eigenschaften/randabstand.htm#margin_top
Hallo Alex,
da sagt er: end tag for <p> that is not open!
aber es is eindeutig open
nein, ist es nicht. Das p-Element hat (in html) ein optionales End-Tag und darf außerdem keine block-Level-Elemente enthalten - der Validator nimmt also an, dass das p-Element bei dem <div> geschlossen wird und bringt dann bei dem '</p>' eine Fehlermeldung, da er kein öffnendes <p> dazu findet. (siehe auch http://www.w3.org/TR/html401/struct/text.html#edef-P und http://de.selfhtml.org/html/text/absaetze.htm#definieren)
Grüße aus Nürnberg
Tobias
Hallo,
Kurzer Auszug:
<p>
<br>
<div class="head3">
Unterüberschrift
</div>
<div>
<br>
<br>
Text
</div>
</p>
innerhalb von p sind nur inline-elemente erlaubet
http://de.selfhtml.org/html/referenz/elemente.htm#p
andere Fehler (die der Validator leider nicht erkennte):
Warum maskierst du die Unterüberschrift mit einem div?
besser wäre hx (h1-h6).
du benutzt <br> um Abstände zu erzeugen
nutze dazu besser die CSS-Eigenschaften margin oder padding
dein Beispiel (so wie es dort steht) könnte so aussehen
<div>
<h2>Unterüberschrift</h2>
<p>Text</p>
</div>
mfg NAG