Thomas Rupp: Break bei Fensterbreite

Hallo HTML Gurus,

ich möchte eine größere Menge von zweizeiligen Tabellen so nebeneinander platzieren, daß alle bis zum Fensterende nebeneinander angelegt werden und danach in einer zweiten Zeile fortgesetzt wird.

Leider zeigt IE 5.0 alle Tabellen in einer einzigen Reihe an, so daß ich scrollen muß.

Meine Tabellen sehen wie folgt aus:

<table width=70 align=left>
  <tr align=middle><td><a href="http://..."><IMG border=0 src="icon-pdf-file.gif"></a></td></tr>
  <tr align=middle><td><a href="http://...">Acrobat<br>Reader</a></td></tr>
</table>

Hätte jemand von Euch einen Tipp für mich?

Danke und schöne Grüße vom Bodensee
Thomas

  1. Hallo Thomas

    ich möchte eine größere Menge von zweizeiligen Tabellen so nebeneinander platzieren, daß alle bis zum Fensterende nebeneinander angelegt werden und danach in einer zweiten Zeile fortgesetzt wird

    Als erstes solltest Du Dich möglicherweise klarer ausdrücken. Ich habe aus Deiner Frage folgendes verstanden:
    Du möchtest das n Tabellen a 2 Rows bis zum "ende" des Fensters angezeigt werden der Rest soll darunter angezeigt werden.
    Also so weit ich HTML kenne gibt es keinen automatischen Zeilenumbruch bei Tabellen. Der Browser zeigt alle von Dir definierten Tabellen in einer Zeile an wenn Du keienen "Zeilenumbruch" angegeben hast.

    Zur realisierung bleibt Dir wohl nur die Breite des Fensters abzufragen und dann eine entsprechend gestalltete Seite anzuzeigen.

    Gruß
    Jürgen

    1. Hallo Jürgen,

      trotz meiner unklaren Formulierung (sorry!) ist der Sinn meiner Frage doch rübergekommen.
      Wenn ich Tabellen definiere (<Table>..</Table>) werden sie untereinander platziert. Richte ich die Tabellen links aus (<Table Align=Left>..</Table>), so schreibt er Tabelle für Tabelle nebeneinander.
      Nun wäre es schön, wenn die Tabellen in einer neuen "Zeile" angeordnet würden, sobald das Fenster voll ist (damit ich keinen horizontalen Scrollbalken bekomme).
      Wenn ich Dich richtig verstehe, geht das nur programmgesteuert (z.B. über Javascript).

      Gibt es vielleicht eine andere Möglichkeit unter diesen Rahmenbedingungen eine Grafik mit darunterliegendem Text (wie die Icons auf dem Desktop) in HTML anzuordnen?

      Gruß
      Thomas

      1. Wenn ich Tabellen definiere (<Table>..</Table>) werden sie untereinander platziert. Richte ich die Tabellen links aus (<Table Align=Left>..</Table>), so schreibt er Tabelle für Tabelle nebeneinander.
        Nun wäre es schön, wenn die Tabellen in einer neuen "Zeile" angeordnet würden, sobald das Fenster voll ist (damit ich keinen horizontalen Scrollbalken bekomme).

        Also wenn ich es jetzt so in etwa verstanden habe, dann sollte

        TABLE { display: inline; }

        Dir weiterhelfen, allerdings habe ich es jetzt nicht probiert, in
        welchem Browser es funktioniert, solltest Du unbedingt noch machen.

        Wenn ich Dich richtig verstehe, geht das nur programmgesteuert (z.B. über Javascript).

        s.o.

        Gibt es vielleicht eine andere Möglichkeit unter diesen Rahmenbedingungen eine Grafik mit darunterliegendem Text (wie die Icons auf dem Desktop) in HTML anzuordnen?

        ?

        1. Hallo Stefan,

          der Tipp mit CSS führte mich in die richtige Richtung:
            TABLE {float:left}
          brachte das gewünschte Ergebnis.

          Danke
          Thomas

          1. Hallo Thomas,

            der Tipp mit CSS führte mich in die richtige Richtung:
              TABLE {float:left}
            brachte das gewünschte Ergebnis.

            ich fürchte, diese Variante ist nicht die korrekte Lösung. Dein Pro-
            blem ist der Absatz, der um das Block-Level-Element TABLE erzeugt
            wird und den hebst Du mit display:inline; wieder auf, nicht jedoch
            mit float:left;
            Schaue Dir mal beide Varianten im Mozilla an, dann wirst Du den
            Unterschied sehen, der MSIE ist an dieser Stelle mal wieder nicht
            wirklich nützlich, da er float:left; nicht korrekt umsetzt.

            MfG, Stefan

            1. Hallo Stefan,

              da es auf meinem IE 5.0 und 5.5 funktioniert, bin ich glücklich und zufrieden :-)
              Das ist eine Intranet Geschichte und *alle* Anwender haben IE >= 5.0.
              Macht die Sache doch erheblich einfacher ;-)

              Gruß und schönes Weekend
              Thomas

              1. Hallo nochmal,

                da es auf meinem IE 5.0 und 5.5 funktioniert, bin ich glücklich und zufrieden :-)
                Das ist eine Intranet Geschichte und *alle* Anwender haben IE >= 5.0.

                OK, unter diesen Voraussetzungen gebe ich Dir völlig recht. Die
                von mir genannte Lösung table { display: inline; } funktionierte
                allerdings auf dem MSIE 5.5 SP1 auch, bei der 5.0 kann ich es hier
                nicht testen.

                Macht die Sache doch erheblich einfacher ;-)

                Kleiner Tipp am Rande:
                Wenn Du wieder eine ähnliche Frage hast, dann erwähne gleich am An-
                fang, dass Du in einem Intranet arbeitest, wo nur MSIE 5.x einge-
                setzt werden, macht bei manchen Problemen die Lösungsfindung er-
                heblich einfacher :-)

                Gruß und schönes Weekend

                ebenfalls, Stefan