Flo: Unerklärliches Problem

Hallo allerseits!
Ich habe ein absolut unerklärliches Problem. Und zwar möchte ich einen <p>-Tag einfach formatieren. Aber das funktioniert weder über inline-Styles noch über ein externes Stylesheet.
Ich poste jetzt mal den Quellcode:

<html>
<head>
 <title>Untitled</title>
</head>

<body>
 <p class="code" style="color: #FF0000;">
  <div style="padding-left:0">&#60;body&#62;</div>
   <div style="padding-left:2em">&#60;h1>Überschrift&#60;/h1&#62;</div>
   <div style="padding-left:2em">&#60;ul&#62;</div>
    <div style="padding-left:4em">&#60;li&#62; Menüpunkt 1 &#60;/li&#62;</div>
    <div style="padding-left:4em">&#60;li&#62; Menüpunkt 2 &#60;/li&#62;</div>
    <div style="padding-left:4em">&#60;li&#62; Menüpunkt 3 &#60;/li&#62;</div>
    <div style="padding-left:4em">&#60;li&#62; Menüpunkt 4 &#60;/li&#62;</div>
   <div style="padding-left:2em">&#60;/ul&#62;</div>
   <div style="padding-left:2em">&#60;div id="content"&#62;</div>
    <div style="padding-left:4em">&#60;p&#62;</div>
     <div style="padding-left:6em">Absatz 1</div>
    <div style="padding-left:4em">&#60;/p&#62;</div>
    <div style="padding-left:4em">&#60;p&#62;</div>
     <div style="padding-left:6em">Absatz 2</div>
    <div style="padding-left:4em">&#60;/p&#62;</div>
   <div style="padding-left:2em">&#60;/div&#62;</div>
  <div style="padding-left:0">&#60;/body&#62;</div>
 </p>
</body>
</html>

Wo liegt mein Fehler? Könntet ihr mir das bitte sagen?
Vielen Dank! Flo

  1. Wo liegt mein Fehler? Könntet ihr mir das bitte sagen?
    Vielen Dank! Flo

    Der Fehler liegt darin dass du DIV-Elemente im P-Element hast.
    Ändere das P-Element zu einem DIV-Element oder die DIV-Elemente zu SPAN-Elementen

    --
    Lg,
    Snafu
  2. Moin

    Wo liegt mein Fehler? Könntet ihr mir das bitte sagen?

    darin, dass du ungeeignete Tags nutzt.
    Wie wäre es mit <code> für Quellcode?
    Dazu noch white-space:pre; als CSS-Eigenschaft und du kannst die DIVs weglassen.

    Gruß
    rfb

    --
    Man kann einen Menschen nichts lehren, man kann ihm nur helfen, es selbst zu entdecken.
    (Galileo Galilei)
  3. Hallo,

    Ich habe ein absolut unerklärliches Problem. Und zwar möchte ich einen <p>-Tag einfach formatieren. Aber das funktioniert weder über inline-Styles noch über ein externes Stylesheet.

    doch, ich bin mir ziemlich sicher, dass das funktioniert. Nur solltest du dabei beachten, wie groß dein p-Element *wirklich* ist. Ein p darf nämlich keine Blockelemente enthalten, also gilt das p beim ersten Auftreten eines <div> bereits wieder implizit als geschlossen.

    Ich poste jetzt mal den Quellcode:

    Der wird also vom Browser (und vom Validator) intern so interpretiert:

    <p class="code" style="color: #FF0000;">
    </p> <div style="padding-left:0">&#60;body&#62;</div>
      ...

    Außerdem ist mir schleierhaft, wofür du die vielen div-Elemente brauchst. Wenn du Quellcode mit sauberen Einrückungen darstellen willst, nimm doch ein pre- oder ein code-Element.

    Schönes Wochenende,
     Martin

    --
    Wichtig ist, was hinten rauskommt.
      (Helmut Kohl, 16 Jahre deutsche Bundesbirne)