2008-11-08 45 views
7

Tôi không thể cho cuộc sống của tôi tìm cách để thực hiện công việc này.Bố cục CSS Câu hỏi

Nếu tôi có 3 div (thanh bên trái, phần chính và chân trang), làm cách nào để có thanh bên và phần chính nằm cạnh nhau mà không đặt vị trí của chúng là "tuyệt đối" hoặc thả chúng? Thực hiện một trong các tùy chọn này dẫn đến div chân trang không bị đẩy xuống một hoặc cái kia.

Làm cách nào tôi có thể thực hiện điều này bất kể điều gì xảy ra trước các yếu tố này (giả sử div phần đầu khác hoặc thứ gì đó)?

Trong trường hợp nó giúp, đây là một minh chứng hai trường hợp tôi đang cố gắng để cho phép:

alt text http://www.nickawilliams.com/files/layout.jpg

Dưới đây là một phiên bản đơn giản của HTML Tôi hiện đã thiết lập:

<div id="sidebar"></div> 
<div id="content"></div> 
<div id="footer"></div> 

Trả lời

18

Bạn cần chỉ định chân trang để xóa phao:

#footer{ 
clear: both; 
} 

Điều này buộc nó dưới các yếu tố nổi.

Các tùy chọn khác cho rõ ràng là trái và phải.

+0

Cảm ơn bạn! Đó chính là điều cần thiết! Tôi đã thử sử dụng rõ ràng nhưng trên divs nổi hơn là footer, bây giờ nó hoạt động như mong đợi. – Wilco

0

Ngay bây giờ bạn sẽ vô vọng nếu bạn không muốn nổi bất cứ điều gì, cũng như không sử dụng vị trí: tuyệt đối.

Các phương án duy nhất còn lại là:

  • sử dụng display: inline-block cho thanh bên và nội dung divs (điều này không được hỗ trợ bởi tất cả các trình duyệt nào)
  • chờ đợi cho css advanced layout module hoặc một số mô-đun cột khác (sẽ mất mãi mãi lẽ)
  • quay trở lại sử dụng các bảng
1

Làm một trong các tùy chọn này dẫn đến việc div chân không bị đẩy xuống bởi một hay khác ?

Hãy thử this tool

Các vấn đề liên quan