Heinrich: Breite variabel

Hallo Experten,

ich habe zwei Tabellen. Die obere hat eine feste Anzahl Zeilen und damit eine feste Höhe, die untere kann sehr unterschiedlich viele Zeilen haben und deshalb habe ich sie scrollbar angelegt.

...

<TABLE style="TABLE-LAYOUT: fixed" cellSpacing=0 width="98%">  
<COLGROUP>  
<COL width="30%">  
<COL width="10%">  
<COL width="10%">  
<COL width="30%">  
<COL width="20%"></COLGROUP>  
<TBODY>  
<TR style="FONT-WEIGHT: bold; FONT-SIZE: 12px; VERTICAL-ALIGN: middle; COLOR: #ffffff; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none" bgColor=#778899>  
<TD class=ms-rtetablecells></TD>  
<TD class=ms-rtetablecells></TD>  
<TD class=ms-rtetablecells></TD>  
<TD class=ms-rtetablecells></TD>  
<TD class=ms-rtetablecells></TD></TR></TBODY></TABLE>  
<DIV style="OVERFLOW: auto; HEIGHT: 550px">  
<TABLE class=tableLine cellSpacing=0 width="100%">  
<COLGROUP>  
<COL width="30%">  
<COL width="10%">  
<COL width="10%">  
<COL width="30%">  
<COL width="20%"></COLGROUP>
~~~...  
  
Wenn die untere Tabelle keinen Scrollbalken hat, sind die Spalten nicht mehr genau untereinander. (klar, müßte ja dann width="100%" statt width="98%" für Tabelle1 heißen)  
  
Kann ich "irgendwie" feststellen, ob in Tabelle2 ein Scrollbalken ist und damit die Breite der 1.Tabelle beeinflussen? Oder kann/muß ich das anders lösen?  
  
Heinrich
  1. Kann ich "irgendwie" feststellen, ob in Tabelle2 ein Scrollbalken ist und damit die Breite der 1.Tabelle beeinflussen? Oder kann/muß ich das anders lösen?

    Sind es zwei Tabellen oder ist es eigentlich eine Tabelle?

    Im zweiteren Fall könntest du einfach mehrere tbody-Elemente verwenden.

    Ansonsten könntest du für beide Tabellen in den Platz für den Scrollbar vorsehen, auch wenn ihn eine Tabelle niemals brauchen wird.

    1. Hallo suit,

      es ist eigentlich eine Tabelle, bei der beim Scrollen der Tabellenkopf stehenbleiben soll. Deshalb Tabelle1 für den Tabellenkopf und Tabelle2 für den Inhalt.

      Ich versuche zwei tbody-Elemente zu verwenden, bekomme aber dann funktioniert das Scrollen nicht mehr. Wie müßte der Code ausschauen?

      Heinrich

      1. es ist eigentlich eine Tabelle, bei der beim Scrollen der Tabellenkopf stehenbleiben soll. Deshalb Tabelle1 für den Tabellenkopf und Tabelle2 für den Inhalt.

        Zwei tbody-Elemente sind dann aber Unsinn, wenn eines der Tabellenkopf ist und das andere die Tabelle ist ein thead- und ein tbody-Element das mittel der Wahl.

        Ich versuche zwei tbody-Elemente zu verwenden, bekomme aber dann funktioniert das Scrollen nicht mehr. Wie müßte der Code ausschauen?

        <del>Das darfst du mich jetzt nicht fragen, es gibt im Archiv aber ein paar Threads dazu die das immer wieder behandeln. Wenn ich mich richtig erinnere, hat Beat im letzten Jahr mal eine Lösung dazu erarbeitet. Möglicherweise ist die auch im Wiki gelandet - ggf. durchsuchst du mal das Archiv.</del>

        <ins>gefunden</ins>

        1. Hallo suit,

          wenn ich die Tabelle mit thead und tbody erstelle, bekomme ich tbody nicht in ein eigenes div zum Scrollen. Geht das nicht oder mache ich was falsch!?

          So wie in Deinem Link beschrieben, habe ich es gemacht (mit <DIV style="OVERFLOW: auto...) und eben das Problem mit der Tabellenkopfbreite, wenn kein Scrollbalken vorhanden ist.

          Heinrich

          1. @@Heinrich:

            nuqneH

            So wie in Deinem Link beschrieben, habe ich es gemacht (mit <DIV style="OVERFLOW: auto...)

            ?? Wozu ein div?

            suit hatte doch ein Posting von beat verlinkt. In meiner Antwort darauf findest du eine Testseite von mir, wo du dir Markup und CSS ansehen kannst.

            Qapla'

            --
            Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
            (Mark Twain)
            1. Hallo Gunnar,

              den Link von Dir habe ich mir auch angeschaut. Aber die Seite wird im IE nicht korrekt angezeigt. Kein Scrollbalken, keine Formatierung...
              Im Mozilla wird das Beispiel mit Scrollbalken angezeigt.

              Das hilft mir leider nicht weiter, da wir in der Firma fast ausschließlich IE benutzen.

              Oder habe ich einen Denkfehler und muß für IE noch etwas anpassen?

              Heinrich

              1. @@Heinrich:

                nuqneH

                Das hilft mir leider nicht weiter, da wir in der Firma fast ausschließlich IE benutzen.

                Du bist nicht zu beneiden.

                Vielleicht ist Gernot Backs Artikel Übergroße Tabellen in koordiniert scrollenden Frames was für dich.

                Qapla'

                --
                Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
                (Mark Twain)