Absolut positionierte div-Element innerhalb des Blocks mit position:fixed und Scrollbalken

Ich habe ein div mit position: fixed mit zwei weiteren divs: eine mit Inhalt und die zweite die muss immer positioniert werden, auf der Unterseite des Haupt-div.

Hier ist ein Beispiel:

CSS:

.scroller {
  position: fixed;
  border: 1px solid #ddd;
  width: 240px;
  height: 100px;
  top: 0;
  bottom: 0;
  overflow: auto;
}
.footer {
  position: absolute;
  bottom: 0;
}

HTML:

<div class="scroller">
  <div class="content">
    <div>content</div><div>content</div><div>content</div><div>content</div>
    <div>content</div><div>content</div><div>content</div><div>content</div>
    <div>content</div><div>content</div><div>content</div><div>content</div>
  </div>
  <div class="footer">FOOTER</div>
</div>

Das problem ist, dass Fußzeile beginnt zu verschieben und mit anderen Inhalten, wenn der Benutzer scrollt Inhalt der main-block, trotz position:absolute des footer-Blocks.

Gibt es eine Möglichkeit, stick footer an den unteren Rand des Haupt-fixed-block ohne änderung der html-Struktur?

Und was ist, wenn Haupt-div enthält, viele Kinder und nur die Letzte von Ihnen ist der footer, die wir benötigen, um stick nach unten? Beispiel:

CSS:

.scroller {
  position: fixed;
  border: 1px solid #ddd;
  width: 240px;
  height: 100px;
  top: 0;
  bottom: 0;
  overflow: auto;
}
.footer {
  position: absolute;
  bottom: 0;
}

HTML:

<div class="scroller">
  <div class="content">
    <div>content</div><div>content</div><div>content</div><div>content</div>
  </div>
  <div class="content">
    <div>content</div><div>content</div><div>content</div><div>content</div>
  </div>
  <div class="content">
    <div>content</div><div>content</div><div>content</div><div>content</div>
  </div>
  <div class="footer">FOOTER</div>
</div>

  • BTW, vielleicht laufen in ein problem, "wenn" Sie sich entscheiden, fügen Sie width:100% zu Ihrem .footer wie hier: jsfiddle.net/unV9H/8 (Gebäude auf der Spitze von Oriol Lösung), als den unteren Teil der scrollbar wird ausgeblendet werden, indem Sie Ihre .footer.
InformationsquelleAutor accme | 2012-08-14
Schreibe einen Kommentar