2013-11-01 15 views
6

Tôi đang cố tạo hiệu ứng mờ trên một trang. Tôi muốn cửa sổ bật lên hiển thị và sau đó phần còn lại của trang bị mờ. Tuy nhiên, tôi dường như chỉ có thể làm mờ các hình nền, chứ không phải các yếu tố thực tế trên trang, là những gì tôi đang cố gắng làm thậm chí có thể?tạo hiệu ứng nền mờ

+0

bản sao có thể có của [Hiệu ứng làm mờ trên phần tử div] (http://stackoverflow.com/questions/11977103/blur-effect-on-a-div-element) –

+0

Chỉ các trình duyệt hiện đại - https: // nhà phát triển. mozilla.org/en-US/docs/Web/CSS/filter – Adam

+0

bản sao có thể có của [Cách sử dụng CSS (và JavaScript?) để tạo nền mờ "mờ"? (http://stackoverflow.com/questions)/17092299/cách sử dụng-css-và-javascript-để-tạo-mờ-mờ nền) – apaul

Trả lời

5

Bạn có thể làm mờ các phần tử riêng lẻ, nhưng bạn không thể tạo lớp phủ mờ.

May mắn thay, CSS -prefix-filter: blur(##) sẽ tự động áp dụng cho các phần tử con. Những gì bạn cần phải bao gồm mọi phần tử ngoại trừ cửa sổ bật lên của bạn trong div, sau đó apply the blur to that.

Ví dụ JS:

$('body > *').wrap('<div class="blur-all">').append($popup); 

CSS:

.blur-all { 
    -webkit-filter: blur(10px); 
    -moz-filter: blur(10px); 
    -o-filter: blur(10px); 
    -ms-filter: blur(10px); 
    filter: blur(10px); 
} 

Đừng quên để unwrap con cái .blur-all một khi bạn đang thực hiện với các popup.

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