Julian von Mendel: Blocklevel-Element mit Floating überdeckt Tabelle

Hi,

ich habe hier einen Inhaltsbereich mit begrenzter Breite. Innerhalb dieses Inhaltsbereichs ist eine Tabelle die die gesamte Breite ausnutzt und ein Blocklevel-Element, welches ca. 25% der Gesamtpreite nutzt. Es ist mit der Eigenschaft float:right versehen, damit evtl. vorhandener Text außenrum fließt. In diesem Fall ist da kein Text, sondern eben die Tabelle, die die gesamte Breite ausnutzt. Jetzt habe ich das Problem, dass die Tabelle mein Blocklevel-Element überlagert. Ich hätte eigentlich erwartet, dass die Tabelle einfach erst am Ende des Blocklevel-Elements anfängt, d.h. nach unten verschoben ist, da sie ja die gesamte Breite benötigt, diese jedoch aufgrund der Einschränkung der Breite durch das gefloatete Element nicht nutzen kann. Aber nein, sie Tabelle und Blocklevel-Element überlagern sich. In Firefox 1.5 und Opera. In anderen Browsern liefs so wie gewünscht. Mache ich was falsch? Wie kann ich den Effekt beeinflussen?

Momentan sieht das also so aus:

+---------------+-----+
| Tabelle Tabell|eBox |
| Tabelle Tabell|eBox |
| Tabelle Tabell+-----+
| Tabelle Tabelle     |
| Tabelle Tabelle     |
| Tabelle Tabelle     |
+---------------------+

Und ich möchte es so:

+---------------+-----+
|               | Box |
|               | Box |
|               +-----+
| Tabelle Tabelle     |
| Tabelle Tabelle     |
| Tabelle Tabelle     |
| Tabelle Tabelle     |
+---------------------+

Schöne Grüße
Julian

  1. Hi,

    Ich hätte eigentlich erwartet, dass die Tabelle einfach erst am Ende des Blocklevel-Elements anfängt, d.h. nach unten verschoben ist, da sie ja die gesamte Breite benötigt,

    Tut sie ja auch - gib ihr mal einen Rahmen und Du siehst es. Und der Inhalt tut das, wozu float gedacht ist: er umfließt die Box.

    Und ich möchte es so:

    +---------------+-----+
    |               | Box |
    |               | Box |
    |               +-----+
    | Tabelle Tabelle     |
    | Tabelle Tabelle     |
    | Tabelle Tabelle     |
    | Tabelle Tabelle     |
    +---------------------+

    wenn Du float nutzt, solltest Du auch clear kennen.

    freundliche Grüße
    Ingo

    1. Hi,

      wenn Du float nutzt, solltest Du auch clear kennen.

      du hast Recht. Vielen Dank. Ist es genaugenommen jetzt ein Bug, dass manche Browser die Tabelle nach unten verschoben haben, obwohl ich kein clear:both gesetzt hatte?

      Schöne Grüße
      Julian

      1. Hi,

        Ist es genaugenommen jetzt ein Bug, dass manche Browser die Tabelle nach unten verschoben haben, obwohl ich kein clear:both gesetzt hatte?

        Ich würde sagen: Ja. Es sei denn, Du hast der Tabelle eine Breite zugewiesen, die nicht mehr neben die floatende Box passen würde.

        freundliche Grüße
        Ingo