Hansjörg: Opera-Bug ?

Guten Morgen zusammen

ich beschäftige mich gerade eine Runde mit CSS-Positionierung. Jetzt ist mir im Opera doch ein ziemlich merkwürdiges Verhalten aufgefallen. Könnt ihr mir sagen, warum der Opera (Version 6.01) hier die beiden Blöcke 1 und 3 nicht genau nebeneinander stellt? Andere aktuellen Browser stellen alles korrekt dar.

Danke schon einmal im Voraus
Gruß Hansjörg

Hier der zugehörige Code:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
  <head>
     <title>
        CSS-Positionierung
     </title>
     <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
  </head>
  <body>
     <p style="position:fixed; left:5px; top:60px;width:60px;height:60px;">1</p>
     <p style="position:fixed; left:5px; bottom:60px;width:60px;height:60px;">2</p>
     <p style="position:fixed; right:5px; top:60px;width:60px;height:60px;">3</p>
     <p style="position:fixed; right:5px; bottom:60px;width:60px;height:60px;">4</p>
  </body>
</html>

  1. Tag auch

    Ich denke nicht, daß das ein Bug ist. Mozilla stellt die Seite identisch dar.

    Das liegt vermutlich daran, daß bei Textabsätzen die Abstände zum nächsten Absatz und die Zeilenhöhe eine Rolle spielen. Genau weiß ich es im Moment auch nicht.
    Wenn Du testweise mal margin, padding und line-height auf null setzt, stehen die Absätze auch schön brav in Reih und Glied.
    Und wenn Du stattdessen divs verwendest, passt es sogar auf Anhieb.

    Thomas J.

    1. Tach Thomas J.

      also mein Mozilla macht alles brav mit. Mit divs funktioniert es auch in meinem Opera. Wundert mich aber trotzdem, daß die Zeilenhöhe und die Absätze hier eine Rolle spielen sollen. Aber wieso hat das links positionierte <p/> Einfluß auf das rechts positionierte? Die haben doch durch die Formatierung überhaupt nichts miteinander am Hut und wenn dem so wäre, wieso passiert das dann bei den beiden anderen Blöcken nicht?

      fragende Grüße
      Hansjörg

      1. also mein Mozilla macht alles brav mit.

        Meiner nicht (1.0 RC2).

        wundert mich aber trotzdem, daß die Zeilenhöhe und die Absätze hier eine Rolle spielen sollen. Aber wieso hat das links positionierte <p/> Einfluß auf das rechts positionierte? ...

        Daß sich die Absätze doch gegenseitig beinflussen, kannst Du feststellen, indem Du ganz einfach mal die Reihenfolge änderst. Setze den Absatz 3 nach oben und Du wirst feststellen, daß sich die Anordnung verändert. Jetzt paßt der rechte obere Absatz, während der linke verschoben ist.
        Ich kann mir das im Moment nur so erklären, daß die Browser für die nachfolgenden Absätze automatisch Werte für margin einsetzen. Zwei aufeinanderfolgende "normale" Textabsätze haben schließlich auch einen Abstand zueinander.

        Versuche doch einfach mal, etwas mit verschiedenen Schriftgrößen zu spielen. Dann wirst Du vielleicht auch feststellen, woran es liegt. Ich kann mir gut vorstellen, daß der Versatz bei Schriftgröße 14px anders ist als bei 24px.

        Thomas J.