Nina: <div>-Element in einem <p>-Element

Hallo zusammen,

ist es nicht erlaubt ein <div>-Element in ein <p>-Element zu plazieren?
Also so:

<p>
  Mein p-Element
  <div>Mein div-Element</div>
</p>

Der Validator bringt folgende Fehlermeldung: "end tag for element "P" which is not open"

Es handelt sich doch bei beiden Elementen um block-Elemente. Wieso ist das denn nicht erlaubt?

Danke für Eure Hilfe.
Gruss

Nina

  1. Hello,

    <p>
      Mein p-Element
      <div>Mein div-Element</div>
    </p>

    Der Validator bringt folgende Fehlermeldung: "end tag for element "P" which is not open"

    Es handelt sich doch bei beiden Elementen um block-Elemente. Wieso ist das denn nicht erlaubt?

    Wieso wweiiß ich auch nicht, aber es ist nicht erlaubt. In SelfHTML gibt es ja eine sehr gute referenz darüber, welches Element wleche Parant- und welche Childelemente haben darf. Seitdem ich die öfter anschaue, habe ich ganz selten noch einen Validator-Fehler.

    <p> und <ul> darfst Du z.B. auch nicht schachteln.

    Ich nenne die für mich einfach "große" und "kleine" Blockelemente und so langsam merkt man sich das dann auch.

    Harzliche Grüße aus http://www.annerschbarrich.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau
  2. Hallo zusammen,

    ist es nicht erlaubt ein <div>-Element in ein <p>-Element zu plazieren?

    Nein. Das W3C sagt:
    "The P element represents a paragraph. It cannot contain block-level elements (including P itself)."

    Ich schätze mal, da paragraph "Absatz" bedeutet, würde es die Struktur total sprengen, wenn dort noch ein "Absatz im Absatz" definiert werden könnte.

    Die Frage ist: Warum willst du überhaupt ein div haben? Was ist mit span? Das geht doch.

    Der Yeti

    --
    Habe nun, ach! WInfo, BWL, und Mathe, Und leider auch Info!
    Durchaus studiert, mit heißem Bemühn. Da steh' ich nun, ich armer Thor!
    Und bin so klug als wie zuvor!
    1. Die Frage ist: Warum willst du überhaupt ein div haben? Was ist mit span? Das geht doch.

      dann müßte ich dem <span> per css display: block vergeben.
      Könnte ich auch machen.

      danke

      1. Oder margins, wenn es nur darum geht.
        Der Yeti

        --
        Habe nun, ach! WInfo, BWL, und Mathe, Und leider auch Info!
        Durchaus studiert, mit heißem Bemühn. Da steh' ich nun, ich armer Thor!
        Und bin so klug als wie zuvor!
  3. Hallo,

    ist es nicht erlaubt ein <div>-Element in ein <p>-Element zu plazieren?

    Nein, ist es nicht ...

    (...)

    Es handelt sich doch bei beiden Elementen um block-Elemente. Wieso ist das denn nicht erlaubt?

    ... die DTD schreibt vor, dass <p> nur inline-Elemente enthalten kann:

    <!ELEMENT p %Inline;>

    Allerdings kann man <div>-Elemente theoretisch beliebig tief schachteln...

    Gruß,
    Rainer