2015-03-26 24 views
6

Vì vậy, trang web của tôi có tiêu đề và div chứa Thanh trượt cuộc cách mạng ngay sau đó. Tôi đang cố thêm một hộp đổ bóng bên dưới tiêu đề - và phía trên thanh trượt. Nhưng nó không hoạt động, trừ khi tôi cũng thêm margin-bottom vào tiêu đề - nhưng điều đó làm cho toàn bộ bài tập bắt đầu.Hộp đổ bóng CSS chỉ xuất hiện với lề

Đây là mã:

#header { 
 
    display:block; 
 
    min-height: 99px; 
 
    background: #FFFFFF; 
 
    border-top: 3px solid #8dddcd; 
 
    border-bottom: 1px solid #ecf0f1; 
 
    line-height: 99px; 
 
    box-shadow: 0 10px 10px 10px rgba(0,0,0,0.3); 
 
} 
 
#rev { 
 
    position: relative; 
 
}
<div id="header"></div> 
 
<div id="rev">the slider</div>

một người nào đó có thể giúp tôi tìm ra những gì gây ra điều này?

+0

bản sao có thể có của [Phần hộp css bóng của mô hình hộp của phần tử?] (Http://stackoverflow.com/questions/7036498/is-css-box-shadow-part-of-elements-box-model) – KyleMit

Trả lời

2

Trên thực tế, vấn đề hóa ra có liên quan đến z-index thuộc tính của divs khác nhau. Với một số tinh chỉnh, tôi quản lý để có được tất cả được sắp xếp ra mà không sử dụng bất kỳ lợi nhuận.

Dù sao, cảm ơn tất cả vì đã dành thời gian và trợ giúp!

1

Khi bạn sử dụng chế độ hiển thị mặc định cho hộp đổ bóng (bóng bên ngoài), bạn cần thêm lề theo hướng đó (10px trên trục y trong ví dụ của bạn) để nội dung hộp bị tràn sẽ hiển thị. Nếu bạn muốn hiển thị bóng của hộp bên trong tiêu đề, chỉ cần thêm từ khóa inset vào khai báo của bạn.

6

Xem các câu hỏi sau:

Theo box-shadow spec:

Một phép nối ngoài hộp bóng đã phủ bóng đen như thể border- hộp của nguyên tố bị đục. Cái bóng được rút ra bên ngoài mép biên giới chỉ

Vì vậy, nếu bạn không muốn chồng chéo, bạn sẽ có thêm lề khỏang

#header { 
 
    box-shadow: 5px 5px 5px 5px rgba(0,0,0,0.3); 
 
    margin-bottom: 10px; 
 
} 
 
#slider { 
 
    position: relative; 
 
}
<div id="header">Header</div> 
 
<div id="slider">Slider</div>

+0

Cảm ơn, KyleMit! Vấn đề là khi tôi đặt thanh trượt div thành 'display: none', bóng sẽ xuất hiện mà không cần thêm bất kỳ lề nào vào bất kỳ đâu. Thuộc tính nào của thanh trượt có thể cản trở bóng của tiêu đề, bất kỳ ý tưởng nào? – zkvvoob

+0

@zkvvoob, tôi không hoàn toàn chắc chắn rằng tôi hiểu sự cố của bạn. Bạn có thể cập nhật câu hỏi của mình bằng ảnh chụp màn hình về những gì đang diễn ra và những gì bạn muốn xảy ra. Nếu chỉ là bạn không cần 'margin-bottom' khi thanh trượt được đặt thành' display: none', bạn có thể thêm 'margin-top' vào thanh trượt thay vào đó. – KyleMit

+0

Tôi đã cố gắng tìm ra. Xem câu trả lời của tôi ở phía dưới. Xin lỗi vì những rắc rối! – zkvvoob

2

Nếu bạn cần như bạn nói hộp đổ bóng bên dưới tiêu đề chỉ và phía trên thanh trượt, bạn có thể sử dụng dấu trừ trong số cuối cùng trong hộp bóng như sau:

box-shadow: 0 10px 10px -10px rgba(0,0,0,0.3); 

Điều này sẽ làm cho bóng đổ bóng chỉ xuất hiện ở dưới cùng.

dụ làm việc:

#header { 
 
    display:block; 
 
    min-height: 99px; 
 
    background: #FFFFFF; 
 
    border-top: 3px solid #8dddcd; 
 
    border-bottom: 1px solid #ecf0f1; 
 
    line-height: 99px; 
 
    box-shadow: 0 10px 10px -10px rgba(0,0,0,0.3); 
 
} 
 
#rev { 
 
    position: relative; 
 
}
<div id="header"></div> 
 
<div id="rev">the slider</div>

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