Maxi: Feststehender Tabellenkopf

Hallo!
Ich versuche mich seit ein paar Tagen an einer echt harten Nuss.
In unserem Unternehmen setzen wir den IE6 ein und ich soll jetzt eine Webanwendung schreiben, die Mitarbeiterdaten anzeigt (einer bestimmten Arbeitsgruppe).
Die Anwendung steht.

Da die Tabelle recht lang ist, kam der Wunsch auf, dass der Tabellenkopf immer angezeigt wird und mitscrollt.
Allerdings wirft mich das vor ein Problem:
die css-angabe "position:fixed" interpretiert der ie6 nicht.
Wenn ich jetzt aber die Tabelle auftrennen muss, stimmen die Kopfzeilen nicht mehr mit den Fußzeilen überein. (ich meine die Breiten)

Ich bin echt ratlos, und weis nicht, wie ich das umsetzen soll...
das ganze soll heute nachmittag abgegeben werden :/

  1. Hi,

    Wenn ich jetzt aber die Tabelle auftrennen muss, stimmen die Kopfzeilen nicht mehr mit den Fußzeilen überein. (ich meine die Breiten)

    Wenn du feste breiten machst nicht. und selbst wenn musst du die untere
    in ein div packen in dem dann über die angezeigten gescrollt wird, oder
    du packst es jeweils in ein frameset.

    mit festen breiten angaben und margin etc. dürfte es kein problem sein das zu "faken".

    MfG

  2. Hallo!
    Ich versuche mich seit ein paar Tagen an einer echt harten Nuss.
    In unserem Unternehmen setzen wir den IE6 ein und ich soll jetzt eine Webanwendung schreiben, die Mitarbeiterdaten anzeigt (einer bestimmten Arbeitsgruppe).
    Die Anwendung steht.

    Da die Tabelle recht lang ist, kam der Wunsch auf, dass der Tabellenkopf immer angezeigt wird und mitscrollt.
    Allerdings wirft mich das vor ein Problem:
    die css-angabe "position:fixed" interpretiert der ie6 nicht.
    Wenn ich jetzt aber die Tabelle auftrennen muss, stimmen die Kopfzeilen nicht mehr mit den Fußzeilen überein. (ich meine die Breiten)

    Ich bin echt ratlos, und weis nicht, wie ich das umsetzen soll...
    das ganze soll heute nachmittag abgegeben werden :/

    Hi !

    1.) Tabelle machen, die nur aus Kopf besteht
    2.) darunter DIV-Element, overflow etc., damit ein Scrollbar entsteht
    3.) In DIV-Element Tabelle mit Werten machen
    4.) Erste Zeile von Kopf-Tabelle versteckt eine Zeile machen. In jeder Spalte dieser Zeile steht das längste Wort der jeweiligen Spalte aus der Werte-Tabelle. Somit wird jede "Kopf"-Spalte so breit wie die dazugehörige "Werte"-Spalte. Nicht "width von Kopf-Spalte=width von Wert-Spalte", weil wenn 10. Spalte geändert, ändert sich die Breite von 5. Spalte (oder so, jedenfalls viel Aufwand, bis alles so paßt, wie es soll !)

    Go Andre, Go ! ;-)

  3. Moinsen,

    Da die Tabelle recht lang ist, kam der Wunsch auf, dass der Tabellenkopf immer angezeigt wird und mitscrollt.

    wie innerhalb einer Tabelle eine bestimmte row oder header "über" die weiteren Zeilen mitscrollen soll ist mir unbekannt, vermutlich geht es nicht.

    Aber Du kannst den Tabellenkopf ja vielleicht anders simulieren (also von der Tabelle trennen, die Breiten und Rahmen aber entsprechend anpassen, so dass es aussieht wie der Tabellenkopf) und dann fixieren, hier Beispiele dazu:
    http://annevankesteren.nl/2004/07/fixed-positioning

    --
    cu,
    Maz
  4. Hallo,

    die css-angabe "position:fixed" interpretiert der ie6 nicht.

    Probier es doch mal mit dem Workaround für den Internet Explorer

    Das kann man doch sicher auch für den Head-Bereich benutzen, oder?

    Liebe Grüße,
    Nadja

    --
    system.exit(0);
  5. Hallo Maxi,

    Da die Tabelle recht lang ist, kam der Wunsch auf, dass der Tabellenkopf immer angezeigt wird und mitscrollt.
    Allerdings wirft mich das vor ein Problem:
    die css-angabe "position:fixed" interpretiert der ie6 nicht.
    Wenn ich jetzt aber die Tabelle auftrennen muss, stimmen die Kopfzeilen nicht mehr mit den Fußzeilen überein. (ich meine die Breiten)

    Dazu interessiert dich bestimmt mein Feature-Artikel:

    http://aktuell.de.selfhtml.org/artikel/javascript/scrolltabelle/index.htm

    Bis heute Nachmittag ist das aber dennoch sehr ehrgeizig!

    Gruß Gernot

    1. Hallo nochmal,

      Detlef G. hat hier auch mal eine Variante ohne feste Zellengrößen und ohne simulierte Zellenbegrenzungslinien gebastelt:

      http://d-graff.de/demos/selfhtml/sprachlernspiele/testtab.html

      Wenn du nur den Tabellenkopf und nicht auch die erste Spalte scrollen möchtest, brauchst du natürlich auch nur zwei Frames und einige Funktionen weniger.

      Gruß Gernot

      1. Hallo Gernot

        Detlef G. hat hier auch mal eine Variante ohne feste Zellengrößen und ohne simulierte Zellenbegrenzungslinien gebastelt:

        http://d-graff.de/demos/selfhtml/sprachlernspiele/testtab.html

        Nein, nicht wirklich, das ist die Universialversion.

        Bei
        http://d-graff.de/demos/selfhtml/sprachlernspiele/testtab.html,
        http://d-graff.de/demos/selfhtml/sprachlernspiele/Timeline.html und
        http://d-graff.de/demos/selfhtml/sprachlernspiele/tabelle.html
        ist jeweils nur eine ganz normale Tabelle, mit einem identischen Javascript.

          
        if(frames && !parent.DynTableOL)  
            location.replace("frameset.html" + "?" + location.pathname );  
          
        function init() {  
           if(parent.initframe)  
             parent.initframe(1,1);  
        }  
        
        

        Außerdem sind noch zwei Eventhandler notiert.

          
         <body onload="init();" onmouseover="parent.aktFrame=window.name;">  
        
        

        Den Rest erledigt das Frameset, welches für alle Beispiele identisch ist.
        http://d-graff.de/demos/selfhtml/sprachlernspiele/frameset.html.

        Auf Wiederlesen
        Detlef

        --
        - Wissen ist gut
        - Können ist besser
        - aber das Beste und Interessanteste ist der Weg dahin!
    2. Ohh super danke! ich habs grade durchgelesen, genau das was ich suche!

      Danke!
      Auf eine ähnliche idee bin ich auch schon gekommen, allerdings wusste ich nicht so recht, wie genau es umzusetzen ist.

      Ich habe schon angefangen, vielleicht schaffe ich es noch bis heute nachmittag.
      Wenn nicht, hoffe ich auf einen Aufschub :) (ist ja Freitag)