2013-11-01 112 views
6

我想在頁面上創建模糊效果。我想要顯示一個彈出窗口,然後頁面的其餘部分變得模糊。但是,我似乎只能模糊背景圖像,而不是頁面上的實際元素,這正是我想要做的甚至可能的事情嗎?創建模糊的背景效果

+0

的[div元素上模糊效果]可能重複(http://stackoverflow.com/questions/11977103/blur-effect-on-a-div-element) –

+0

僅現代瀏覽器 - 的https://顯影劑。 mozilla.org/en-US/docs/Web/CSS/filter – Adam

+0

[如何使用CSS(和JavaScript?)創建模糊的「磨砂」背景?](http://stackoverflow.com/questions/17092299 /如何使用css和javascript來創建模糊磨砂背景) – apaul

回答

5

您可以模糊單個元素,但不能創建模糊重疊。

幸運的是,CSS -prefix-filter: blur(##)自動適用於子元素。你需要包裝的每個元素除了你的彈出窗口在一個div,然後apply the blur to that

例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); 
} 

不要忘記,一旦你與彈出做解開的.blur-all孩子。