Marc Nilius: DIV in einem Popup automatisch der Fenstergösse anpassen

Hallo!

Ich oeffne von einer Seite aus ein Popup, in welchem oben ein einleitender Text und unten ein paar Icons dargestellt werden. Dazwischen wird ein DIV eingeblendet, in welches verschiedene Daten aus einer Datenbank eingeladen werden. Das DIV hat die CSS-Eigenschaft "overflow:auto", damit der Inhalt mit Scrollbalken versehen wird, falls zuviele Daten zur Anzeige aus der Datenbank geladen werden.

Nun moechte ich, dass beim Veraendern der Fenstergroesse dieser DIV-Anzeigenbereich mitwaechst. Ich habe dem DIV eine feste Hoehe von 80% gegeben. Damit aendert sich die Groesse des Bereichs zwar auch, allerdings wird (logischwerweise) der Abstand zu den Icons nach unten auch immer groesser. Beispiel hier: http://dev.pixelundprint.de/overflow

Wie bekomme ich es hin, dass der Abstand des Divs nach oben immer eine feste Groesse hat (in px), ebenso wie nach unten, damit sowohl der einleitende Text als auch die Icons dargestellt werden, der Raum dazwischen aber egal bei welcher Fensterhoehe komplett vom DIV ausgefuellt wird?

Schonmal danke fuer die Hilfe.

Viele Gruesse,
Marc

  1. Hi,

    Ich habe dem DIV eine feste Hoehe von 80% gegeben.

    85%.

    Damit aendert sich die Groesse des Bereichs zwar auch, allerdings wird (logischwerweise) der Abstand zu den Icons nach unten auch immer groesser. Beispiel hier: http://dev.pixelundprint.de/overflow

    besser wäre http://dev.pixelundprint.de/overflow/popup.html.

    Wie bekomme ich es hin, dass der Abstand des Divs nach oben immer eine feste Groesse hat (in px), ebenso wie nach unten, damit sowohl der einleitende Text als auch die Icons dargestellt werden, der Raum dazwischen aber egal bei welcher Fensterhoehe komplett vom DIV ausgefuellt wird?

    Gar nicht. Was Du benötigst, ist ein Bereich mit 100% Höhe und padding in px. Hierin kannst Du dann die übrigen Elemente platzieren.

    Berücksichtige bitte auch, daß das alt-Attribut standardmäßig *nicht* als Tooltip angezeigt wird und es keinen Wert "hand" für die Cursoreigenschaft gibt.

    freundliche Grüße
    Ingo

    1. Hi!

      Wie bekomme ich es hin, dass der Abstand des Divs nach oben immer eine feste Groesse hat (in px), ebenso wie nach unten, damit sowohl der einleitende Text als auch die Icons dargestellt werden, der Raum dazwischen aber egal bei welcher Fensterhoehe komplett vom DIV ausgefuellt wird?
      Gar nicht. Was Du benötigst, ist ein Bereich mit 100% Höhe und padding in px. Hierin kannst Du dann die übrigen Elemente platzieren.

      Wie meinst du das jetzt?
      Soll ich um die gesamte Sache (Text oben, Div, Text/Icons unten) nochmals ein Div drumlegen mit einer Höhe von 100%?
      Oder soll das Div zwischen Text und Icon eine Höhe von 100% bekommen und mittels Abstand nach oben und unten Platz schaffen, um die anderen Elemente zu positionieren?
      Letzteres habe ich probiert und nicht hinbekommen. Nach Angabe von Abständen (margin) oben und unten werden die zu der Angabe von 100% dazu addiert - eben gerade das sollte ja nicht passieren.

      Nochmals zur Verdeutlichung: Das was ich hier mittels Div versuche, wäre mittels Frames ganz einfach zu lösen, was ich aber nicht will.

        
      <frameset rows="50,*,50">  
       <frame ..>  
       <frame ..>  
       <frame ..>  
      </frameset>  
      
      

      Soll heissen: Oben und unten immer ein fester Pixel-Abstand, das Div in der Mitte wächst mit. (Dazu kommt noch, dass das Div ggf. mehr Inhalt als darstellbar hat, weswegen es via "overflow:auto" ein paar Scrollbalken verpasst bekommt)

      Berücksichtige bitte auch, daß das alt-Attribut standardmäßig *nicht* als Tooltip angezeigt wird und es keinen Wert "hand" für die Cursoreigenschaft gibt.

      Altlasten, die versehentlich beim Copy&Paste ins Beispiel stehen geblieben sind. :-)

      Vielleicht kann man das ja doch noch lösen...

      Viele Gruesse,
      Marc