Trên thực tế, câu trả lời được chấp nhận bởi @User sẽ chỉ hoạt động nếu cửa sổ cao và nội dung ngắn. Nhưng nếu nội dung cao và cửa sổ ngắn, nó sẽ đưa thông tin bản quyền lên nội dung trang, sau đó cuộn xuống để xem nội dung sẽ để lại cho bạn một thông báo bản quyền nổi. Điều đó làm cho giải pháp này trở nên vô dụng đối với hầu hết các trang (như trang này, thực sự).
Cách phổ biến nhất để thực hiện việc này là cách tiếp cận "CSS footer footer" được trình bày hoặc một biến thể mỏng hơn một chút. Cách tiếp cận này hoạt động rất tốt - NẾU bạn có một chân trang có chiều cao cố định.
Nếu bạn cần một chân trang có chiều cao thay đổi sẽ xuất hiện ở dưới cùng của cửa sổ nếu nội dung quá ngắn và ở dưới cùng của nội dung nếu cửa sổ quá ngắn, bạn sẽ làm gì?
Nuốt niềm tự hào của bạn và sử dụng một bảng.
Ví dụ:
* {
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>
Hãy thử nó. Điều này sẽ hoạt động cho mọi kích thước cửa sổ, cho bất kỳ số lượng nội dung, cho bất kỳ chân trang kích thước nào, trên mọi trình duyệt ... ngay cả IE6.
Nếu bạn đang suy nghĩ về việc sử dụng bảng để bố trí, hãy dành một giây để tự hỏi tại sao. CSS được cho là làm cho cuộc sống của chúng ta dễ dàng hơn - và về tổng thể - nhưng thực tế là ngay cả sau nhiều năm, nó vẫn là một mớ hỗn độn, phản trực giác. Nó không thể giải quyết mọi vấn đề. Nó không đầy đủ.
Bàn không mát, nhưng ít nhất hiện tại, đôi khi chúng là cách tốt nhất để giải quyết vấn đề thiết kế.