pre in p im IE
Axel
- html
Hallo Leute,
habe heute ein merkwürdiges Problem. Seltsamerweise konnte ich nichts im Archiv finden, obwohl das bestimmt schonmal jemand hatte.
Habe ich in einem P-Tag einen langen Text, wird der in allen Browsern ganz normal am Bildschirmrand umgebrochen.
<p> Ganz Langer Text </p>
Wenn ich jetzt im P-Tag einen PRE-Tag habe, wird der Text nicht mehr umgebrochen, sondern die Seite scrollt. Dies gilt aber nicht nur für den Text im Pre-Tag (was ja normal wäre), sondern für den gesamten P-Tag, der den PRE-Tag enthält.
<p> <pre> hier wird </pre> nirgends ein Umbuch gemacht. Egal wie lang der Text ist </p>
Dieses Problem existiert nur im IE. Was ist das denn nun schon wieder für Ding? Kann mir da jemand helfen?
Vielen Dank im Voraus
Schöne Grüße
Axel
<p> <pre> hier wird </pre> nirgends ein Umbuch gemacht. Egal wie lang der Text ist </p>
Axel,
Das ist kein gültiges HTML: pre darf nicht in p vorkommen. http://de.selfhtml.org/html/referenz/elemente.htm#p
Wie Browser fehlerhaften Code darstellen, ist nahezu unverhersagbar.
Live long and prosper,
Gunnar
Hallo Gunnar,
Das ist kein gültiges HTML: pre darf nicht in p vorkommen. http://de.selfhtml.org/html/referenz/elemente.htm#p
vielen Dank erstmal, das wusste ich mal wieder nicht. Jedoch habe ich das Problem auch, wenn ich eine gültige Alternative verwende (gerade probiert).
Wenn ich also statt dem Pre ein DIV nehme (das darf ja im p) und dann auf den div ein display:inline und white-space:pre setze, ist das Problem das gleiche. Und das ist doch gültig, oder?
Dazu evtl. noch ne Idee?
Vielen Dank nochmal,
schöne Grüße
Axel
Hi
Und das ist doch gültig, oder?
Nein, siehe http://de.selfhtml.org/html/referenz/elemente.htm#div
Umgekehrt wäre es gültig.
so long
Ole
(8-)>
Hi,
Nein, siehe http://de.selfhtml.org/html/referenz/elemente.htm#div
mist, ich hab in der falschen Zeile geschaut (Elternelemente). Vielen Dank.
Trotzdem ist es ein generelles Problem. Habe jetzt statt Div auch code, font und kbd probiert. Immer das gleiche Ergebniss (Ok, Font ist nur in Transitional erlaubt, aber code immer).
Vielleicht sonst noch irgendeine Idee?
Vielen Dank,
und schöne Grüße
Axel
Hallo nochmal,
ich glaub echt, dass das ein Bug im IE ist. Das ist also mittlerweile nicht mehr nur "pre in p", sondern ganz allgemein Präformatierter Text in was auch immer. Auch bei normalen Div's. Das Problem lässt sich aber auf die Situation begenzen, wenn der Präformatierte Text am Zeilenanfang steht.
Bsp:
.code {
display:inline;
white-space: pre;
}
<div> gaaanz langer Text </div> <- bricht am Seitenende um
<div> <div class="code"> präformatiert </div> gaaanz langer Text</div> <- bricht nicht um
<div> a<div class="code"> präformatiert </div> gaaanz langer Text</div> <- bricht wieder um 8-o
Nur wegen dem einen Buchstaben vor dem div, wird wieder alles sauber dargestellt. Merkwürdig, merkwürdig.
Bin für Ratschläge dankbar...
Schöne Grüße
Axel