我需要创建一个页面,其中包含一个全屏封面图像和2个div块,其中包含位于此封面图像顶部的内容。
div块需要略微模糊的背景效果 - 类似于Yahoo Weather应用程序使用的效果
但不是模糊整个背景我只需要覆盖的div背景模糊 - 而不是整个事情,这让我头疼!
有没有人设法实现类似的结果 - 或者是否可以通过Jquery / Pure Css或组合来了解它?
答案 0 :(得分:3)
有一个名为blur.js的jQuery插件声称可以执行您想要的操作。虽然没有检查过。
答案 1 :(得分:1)
答案 2 :(得分:1)
我刚想出怎么做!背景和内容div都需要具有相同的背景和相同的定位/大小。并对它们使用background-attachment: fixed
。您可以使用-webkit-filter: blur(5px);
模糊div。您可能需要使用z-index,具体取决于页面上其他内容的位置。此外,如果你想要在模糊div内的内容,它必须在一个完全独立的div位于它上面,否则内部的一切也会变得模糊。这是代码:
<body style="margin: 0px;">
<div id="bg" style="background: url('images/1.png') no-repeat; background-attachment: fixed; min-width: 100%; min-height: 100%;">
<div id="blur-cutoff" style="width: 280px; height: 280px; position: absolute; left: 50%; margin-left: -140px; margin-top: 10px; overflow: hidden;">
<div id="blur" style="width: 300px; height: 300px; background: url('images/1.png') no-repeat; background-attachment: fixed; margin-left: -150px; left: 50%; -webkit-filter: blur(5px); position: absolute;">
</div>
</div>
<div id="unblur" style="width: 300px; height: 300px; position: absolute; left: 50%; margin-left: -150px; z-index: 2;">
<p class="blurtext" style="font-family: tahoma; color: #FFFFFF; text-align: center; line-height: 300px;">This is the blurred div</p>
</div>
</div>
</body>
我无法让jsfiddle为此工作,所以如果有人能做到这一点就会很棒。这里的整个想法是两个div在同一个地方都有完全相同的内容。这样,无论模糊的div移动到哪里,它看起来都会模糊背景。
答案 3 :(得分:0)
您可以使用css3 filter:blur()属性来使图像模糊,但您需要使背景图像与背景元素相同(并且位于相同位置)。您还需要确保模糊元素与您要添加的内容(:之前)分开,否则它也会模糊内容。您也可以使用filter属性更改饱和度和其他元素。