2013-02-02 38 views
11

Tôi đã có 2 hình ảnh làm nền của cơ thể của tôi:Dự phòng cho css3 nhiều hình nền?

background: url(../img/upper_bg.png) 0 495px repeat-x, url(../img/bg.png) repeat; 

tôi phát hiện ra rằng để hiển thị upper_bg.png trên bg.png hình ảnh tôi cần phải đặt nó đầu tiên trong danh sách. Tuy nhiên đối với các trình duyệt không hỗ trợ nhiều nền tôi muốn hiển thị chỉ bg.png, tôi lo ngại rằng trình duyệt rơi xuống upper_bg.png làm dự phòng thay vì bg.png. Làm cách nào để khắc phục sự cố này?

Trả lời

20

Đơn giản chỉ cần thêm một tuyên bố background chỉ với bg.png trước nhiều nền nên làm điều đó:

background: url(../img/bg.png) repeat; 
background: url(../img/upper_bg.png) 0 495px repeat-x, url(../img/bg.png) repeat; 

trình duyệt cũ hơn sẽ bỏ qua dòng thứ hai và giữ cho dòng đầu tiên; họ không nên cố gắng sử dụng bất kỳ phần nào của dòng thứ hai. Các trình duyệt hỗ trợ nhiều hình nền sẽ sử dụng dòng thứ hai thay vì dòng đầu tiên bằng cách ghi đè nó như bình thường.

+0

Công cụ này có thể hoạt động cho hình ảnh dự phòng không có hình ảnh không? (ví dụ: hình ảnh hồ sơ có hình bóng dự phòng, mặc dù việc sử dụng 404 trong quá trình xử lý thông thường có thể không phải là chuẩn) – rookie1024

+0

Có yêu cầu nào khác nếu chúng tôi có hình ảnh khác cho dự phòng không? – nickspiel

+0

@ rookie1024: Thật không may, không. IIRC có một đề xuất khác nhau về việc cung cấp dự phòng trong trường hợp hình ảnh không thể truy cập - mà sẽ yêu cầu một cú pháp khác không phụ thuộc vào tầng, vì tầng là một khái niệm khác hoàn toàn. – BoltClock

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