1

我正在使用 CSS 过滤器来创建模糊的背景并在顶部放置文本。但是当我尝试时,文本也会出现模糊效果。我怎样才能避免这种情况并保持文字不模糊?

HTML

<div id="intro">
   <h1 id="tagline">A dinner to remember...</h1>
</div>

CSS

#intro{
background:url(../img/meal.jpg) no-repeat;
background-size: cover;
height: 500px;
 filter: blur(5px);
-webkit-filter: blur(5px);
-moz-filter: blur(5px);
-o-filter: blur(5px);
-ms-filter: blur(5px);

}

#tagline {
text-align: center;
font-family: 'Lobster', cursive;
position: relative;
font-size: 4em;
color: #fff;

}

截图:http ://d.pr/i/fAFe

4

1 回答 1

0

您不能“取消模糊”模糊父元素中的元素。你可以使用一个绝对定位的伪元素来解决这个问题,堆叠在你的标语后面:

#intro {
    height: 500px;
    position: relative;
}

#intro:before {
    content: "";
    background:url(../img/meal.jpg) no-repeat;
    background-size: cover;
    width: 100%;
    height: 500px;
    position: absolute;
    z-index: -1;
    filter: blur(5px);
}

#tagline {
    text-align: center;
    font-family: 'Lobster', cursive;
    font-size: 4em;
    color: #fff;
}

JSFiddle

于 2013-11-03T15:06:04.447 回答