johannes: <h3> und <ul> in <p> ergibt seltsamen error

Hallo.
Ich arbeite bei meiner Homepage mit <p>-elementen, um Fließtext per css zu formatieren.
Nun meldet mit der w3c-validator einen mir nicht erklärbaren error
bei <h3> und <ul><li>-elementen im <p>-element...

Könnte es sein, dass oben erwähnte kombinierung verboten ist, dh.,
dass <h3> und <ul> in <p>-elementen verboten sind?

hier der validator-link

und der code:

  
# <p>  
# <h3>Allgemeine Infos:</h3>  
# <br><br>  
# Ort: Ballhausgasse 3  
# <br>  
# 8010 Graz  
# <br>  
# Workshop-Leiterin: <a href="./leitung.php">DI Christine Swoboda</a>  
# <br>  
# Info und Anmeldung:0664/5321973 oder  
# <br>  
# info@grazermusikwerkstatt.at  
# <br><br>  
# verf&uuml;gbare Instrumente:  
# <br>  
# <ul>  
# <li>Klavier</li>  
# <li>Schlagzeug</li>  
# <li>Akkordeon</li>  
# <li>Orgel</li>  
# <li>Xylophon</li>  
# <li>Trommeln</li>  
# </ul>  
# </p> <!--über dieses </p> beschwert er sich-->  
  

  1. hallo,

    Könnte es sein, dass oben erwähnte kombinierung verboten ist, dh.,
    dass <h3> und <ul> in <p>-elementen verboten sind?

    Richtig, so ist es.

    Grüße aus Berlin

    Christoph S.

    --
    Visitenkarte
    ss:| zu:) ls:& fo:) va:) sh:| rl:|
  2. Hallo!

    Ein <p> Element darf keine anderen Blockelemente enthalten. Siehe auch http://de.selfhtml.org/html/referenz/elemente.htm#p

    ciao, ww

    --
    Ein japanisch-deutsches Gedicht
    sh:(  fo:|  ch:~  rl:(  br:>  n4:~  ie:%  mo:)  va:)  de:]  zu:)  fl:(  ss:|  ls:~  js:)
  3. Hi,

    Nun meldet mit der w3c-validator einen mir nicht erklärbaren error
    bei <h3> und <ul><li>-elementen im <p>-element...

    Könnte es sein, dass oben erwähnte kombinierung verboten ist, dh.,
    dass <h3> und <ul> in <p>-elementen verboten sind?

    Soweit ich weiß dürfen in <p> nur Inline-Elemente stehen. Sobald ein Block-Element kommt wird es als geschlossen interpretiert (auch wenn </p> nicht extra angegeben wird). Darum ist es vor deinem </p>-tag bereits wieder geschlossen und das </p> ist an dieser Stelle somit falsch.
    Weitere Informationen hierzu findest du auf der verlinkten Seite.

    mfG,
    steckl

    1. Soweit ich weiß dürfen in <p> nur Inline-Elemente stehen. Sobald ein Block-Element kommt wird es als geschlossen interpretiert (auch wenn </p> nicht extra angegeben wird). Darum ist es vor deinem </p>-tag bereits wieder geschlossen und das </p> ist an dieser Stelle somit falsch.

      AHA.
      Endlich valider code...
      THX für die schnellen antworten,
      g, johannes

  4. Hallo,

    Ich arbeite bei meiner Homepage mit <p>-elementen, um Fließtext per css zu formatieren.
    Nun meldet mit der w3c-validator einen mir nicht erklärbaren error
    bei <h3> und <ul><li>-elementen im <p>-element...

    Könnte es sein, dass oben erwähnte kombinierung verboten ist, dh.,
    dass <h3> und <ul> in <p>-elementen verboten sind?

    Ja. Absätze sind kurze Fließtexte, keine Container für weitere Block-Elemente. Für diesen Zweck (also zur Gruppierung von Elementen), nimmt man i.d.R. <div>s.

    und der code:

    <p>

    <h3>Allgemeine Infos:</h3>

    <br><br>

    Mehrere <br>s sind schlecht, zumal du dem <h3>-Element ja einen eigenen Abstand nach unten verpassen kannst.

    Ort: Ballhausgasse 3

    <br>

    8010 Graz

    <br>

    Workshop-Leiterin: <a href="./leitung.php">DI Christine Swoboda</a>

    <br>

    Info und Anmeldung:0664/5321973 oder

    <br>

    info@grazermusikwerkstatt.at

    <br><br>

    verf&uuml;gbare Instrumente:

    <br>

    Diese Informationen ließen sich doch perfekt mit einer Definitionsliste abbilden. Mein Vorschlag:

      
    <dl>  
     <dt>Ort</dt>  
     <dd>  
      <adress>  
       Ballhausgasse 3<br />8010 Graz  
      </adress>  
     </dd>  
     <dt>Workshop-Leiterin</dt>  
     <dd><a href="./leitung.php">DI Christine Swoboda</a></dd>  
     <dt>Info und Anmeldung</dt>  
     <dd>0664/5321973</dd>  
     <dd>info@grazermusikwerkstatt.at</dd>  
    </dl>  
    
    

    mfg. Daniel

    1. Ja. Absätze sind kurze Fließtexte, keine Container für weitere Block-Elemente. Für diesen Zweck (also zur Gruppierung von Elementen), nimmt man i.d.R. <div>s.

      hmm...
      Wie kann ich denn sagen:
      "diese und jene eigenschaft auf alle texte im xy-div-container, aber nicht auf überschriften?

      und der code:

      <p>

      <h3>Allgemeine Infos:</h3>

      <br><br>

      Mehrere <br>s sind schlecht, zumal du dem <h3>-Element ja einen eigenen Abstand nach unten verpassen kannst.

      Wie geht das?

      Diese Informationen ließen sich doch perfekt mit einer Definitionsliste abbilden.

      stimmt eigentlich... werd ich machen!

      g johannes

      1. Hallo,

        Wie kann ich denn sagen:
        "diese und jene eigenschaft auf alle texte im xy-div-container, aber nicht auf überschriften?

        indem du sie zunächst für das gesamte div-Element angibst, und dann für die Überschrift darin wieder mit einem anderen Wert überschreibst.

        Mehrere <br>s sind schlecht, zumal du dem <h3>-Element ja einen eigenen Abstand nach unten verpassen kannst.
        Wie geht das?

        Entdecke die Möglichkeiten von margin und padding. ;-)

        So long,
         Martin

        --
        Gott hilft niemandem, er erfreut sich nur an unseren Leiden.
          (Ashura)