Die von @User akzeptierte Antwort funktioniert nur, wenn das Fenster hoch und der Inhalt kurz ist. Wenn aber der Inhalt hoch und das Fenster kurz ist, wird die Copyright-Information über den Seiteninhalt gelegt, und wenn man dann nach unten scrollt, um den Inhalt zu sehen, wird ein schwebender Copyright-Hinweis angezeigt. Das macht diese Lösung für die meisten Seiten (wie z. B. diese Seite) unbrauchbar.
Die gebräuchlichste Methode dafür ist der gezeigte "CSS Sticky Footer"-Ansatz oder eine etwas schlankere Variante. Dieser Ansatz funktioniert hervorragend - WENN Sie eine Fußzeile mit fester Höhe haben.
Wenn Sie eine Fußzeile mit variabler Höhe benötigen, die am unteren Rand des Fensters erscheint, wenn der Inhalt zu kurz ist, und am unteren Rand des Inhalts, wenn das Fenster zu kurz ist, was tun Sie dann?
Schlucken Sie Ihren Stolz und benutzen Sie einen Tisch.
Zum Beispiel:
* {
padding: 0;
margin: 0;
}
html, body {
height: 100%;
}
#container {
height: 100%;
border-collapse: collapse;
}
<!DOCTYPE html>
<html>
<body>
<table id="container">
<tr>
<td valign="top">
<div id="main">Lorem ipsum, etc.</div>
</td>
</tr>
<tr>
<td valign="bottom">
<div id="footer">Copyright some evil company...</div>
</td>
</tr>
</table>
</body>
</html>
Probieren Sie es aus. Dies funktioniert für jede Fenstergröße, für jede Menge Inhalt, für jede Größe der Fußzeile, auf jedem Browser... sogar IE6.
Wenn Sie bei dem Gedanken, eine Tabelle für das Layout zu verwenden, zusammenzucken, sollten Sie sich einmal fragen, warum. CSS sollte unser Leben einfacher machen - und das hat es im Großen und Ganzen auch - aber Tatsache ist, dass es auch nach all den Jahren immer noch ein kaputtes, kontraintuitives Chaos ist. Es kann nicht jedes Problem lösen. Es ist unvollständig.
Tabellen sind nicht cool, aber zumindest im Moment sind sie manchmal der beste Weg, um ein Designproblem zu lösen.
236 Stimmen
Diese Situation ist einer der Gründe, warum Layout-Tabellen noch nicht verschwunden sind. Dies mit einer Tabelle zu tun, ist kinderleicht und funktioniert überall. Mit CSS ist das wahnsinnig schwierig, und die Unterstützung für verschiedene Browser ist so gut wie nicht vorhanden. Ganz zu schweigen davon, dass es unmöglich ist, sich zu merken, wie man es richtig macht.
1 Stimmen
Ich verstehe die Frage nicht. Warum müssen Sie überhaupt eine absolute Positionierung verwenden? Hat der Container eine bestimmte Höhe, unabhängig vom Inhalt, den er enthält?