【问题标题】:Blurred background for a div elementdiv 元素的模糊背景
【发布时间】:2016-03-27 00:03:48
【问题描述】:

我正在制作一个图片库。我有一个 div,里面保存了一张图片。现在我希望 div 具有与背景相同的图像但模糊。我使用了常见的 CSS3 模糊选项,但所有子元素也变得模糊(在我的例子中是图像)。我是 JavaScript 新手,所以喜欢简单的代码。

【问题讨论】:

  • 用您目前拥有的 html/css 更新您的问题。

标签: javascript jquery css


【解决方案1】:

如果有的话,您的问题更像是一个 CSS 问题。我猜你正在做的是:

HTML:

<div class="parentElement">
    <div class="child"></div>
</div>

CSS:

.parentElement { filter: blur(15px); }

或者在 JS 中:

document.getElementsByClassName("parentElement")[0].style.filter = "blur(15px)";

这将模糊背景以及 parentElement 中的所有元素。

仅模糊元素背景的最佳解决方案是在您的 parentElement 内为您的背景创建一个单独的子元素(或任何您称之为具有背景的类)并将样式设置为如下所示:

HTML:

<div class="parentElement">
    <div class="background"></div>
    <div class="child"></div>
</div>

CSS:

.background { filter: blur(15px); }

或者在 JS 中:

document.getElementsByClassName("background")[0].style.filter = "blur(15px)";

您需要将“背景”类设置为背景,为此,您需要将其设为父元素的全宽并将其绝对定位。

CSS:

.parentElement { position:relative; }

.background { position:absolute; top:0; left:0; width:100%; height:100%; filter: blur(15px); }

【讨论】:

  • 我知道。但它有点必要把它作为一个孩子。
  • @ArchanBhattacharjee 很抱歉,但我不明白你的意思。你的意思是有必要在父元素上有背景吗?如果您提供代码示例,我可能会提供更好的答案。
猜你喜欢
  • 2018-04-24
  • 1970-01-01
  • 2017-08-05
  • 2019-07-03
  • 1970-01-01
  • 2020-10-06
  • 2021-03-08
  • 2010-11-18
  • 1970-01-01
相关资源
最近更新 更多