2010-08-21 43 views
6

Có sự cố lạ trong IE7. Trong một số điểm, tôi có một DIV có vị trí: tuyệt đối trên nó (thả xuống giả) bất cứ khi nào có thứ gì đó đằng sau nó có vị trí: tương đối mục vị trí tương đối sẽ hiển thị thông qua div khác.vị trí: xuất hiện tương đối trên vị trí: tuyệt đối

Relativly vị trí mục không có bất kỳ tập z-index, trong khi mặt hàng đó hoàn toàn vị trí (thứ mà mình muốn trên đầu trang) có z-index của 1000.

http://skitch.com/louiswalch/dub5h/microsoft-windows-vista

+1

bản sao có thể có của [lỗi liên quan đến chỉ số z/chỉ mục z trong danh sách] của IE [http://stackoverflow.com/questions/798482/ie-z-index-relative-absolute-bug-in-list) –

Trả lời

22

tôi nghi ngờ bạn' đã thử nó, nhưng thiết lập một z-index trên phần tử tương đối vị trí của bạn thấp hơn z-index của phần tử được định vị hoàn toàn của bạn làm thử nghiệm đầu tiên.

Nếu điều đó không hiệu quả, bạn cần đảm bảo cả hai phần tử đều giống nhau stacking context. Trong IE, bất cứ khi nào bạn áp dụng quy tắc CSS position cho một phần tử, nó tạo ra một bối cảnh xếp chồng mới trong phần tử đó. Điều đó có nghĩa là chỉ số z sẽ chỉ được tôn trọng đúng trong trẻ em và trẻ em của phần tử đó trong các ngữ cảnh xếp chồng khác với chỉ mục z thấp hơn vẫn có thể xếp chồng lên trên.

Trong trường hợp của bạn, bạn cần phải đặt menu thả xuống và nút trong cùng một bối cảnh xếp chồng hoặc áp dụng chỉ mục z cho 2 yếu tố tạo ngữ cảnh xếp chồng riêng biệt.

+0

Ahh spot trên, đó là vấn đề. Vấn đề là tôi không chắc chắn tôi có thể đặt chúng trong cùng một chỉ mục xếp chồng. Nó xảy ra trên một vị trí khác trên trang web có bố cục phức tạp hơn và phần tử có vị trí tương đối nằm trong một cấp độ hoàn toàn khác của DOM. Tôi đã cố gắng đưa cho món đồ đó thông qua một chỉ số z thấp hơn sau đó mặt hàng ở trên nó và nó vẫn cho thấy mặc dù. những gì "hoặc áp dụng z-index cho 2 yếu tố tạo ra bối cảnh xếp chồng riêng biệt của họ." nghĩa là gì? –

+7

Điều tôi muốn nói là bạn phải tìm 2 phần tử cha với tập hợp 'vị trí' (chúng tạo ra 2 ngữ cảnh xếp chồng riêng biệt) và đặt' z-index' trên chúng. Ví dụ: nếu nút của bạn được lồng trong một vùng chứa có tên là '# content' và trình đơn thả xuống của bạn nằm trong' # header', bạn có thể đặt '#content {z-index: 1} và' #header {z-index: 2} ' . Cung cấp '# header' và' # content' nằm trong cùng một bối cảnh xếp chồng, điều này sẽ khắc phục được sự cố của bạn. – Pat

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