So verwenden Sie CSS-Filtereffekte für Hintergrundbilder
P粉022285768
2023-08-20 13:28:36
<p>Ich habe eine JPEG-Datei, die ich als Hintergrundbild für meine Suchseite verwende, und ich richte sie mit CSS ein, weil ich in einem Backbone.js-Kontext arbeite: </p>
<pre class="brush:php;toolbar:false;">background-image: url("whatever.jpg");</pre>
<p>Ich möchte einen CSS 3-Unschärfefilter nur auf den Hintergrund anwenden, bin mir aber nicht sicher, wie ich nur dieses Element formatieren soll. Wenn ich es versuche: </p>
<pre class="brush:php;toolbar:false;">-webkit-filter: Blur(5px);
-moz-filter: Unschärfe(5px);
-o-filter: Unschärfe (5px);
-ms-filter: Unschärfe(5px);
Filter: Unschärfe(5px);</pre>
<p>Platzieren Sie den obigen Code in meinem CSS unter <code>background-image</code> und er gestaltet die gesamte Seite, nicht nur den Hintergrund. Gibt es eine Möglichkeit, nur ein Bild auszuwählen und einen Filter auf dieses Bild anzuwenden? Gibt es alternativ eine Möglichkeit, den Unschärfeeffekt für andere Elemente auf der Seite einfach zu deaktivieren? </p>
pen
废除了额外元素的需求,使内容适应文档流而不像其他解决方案那样固定/绝对。
使用以下方式实现
编辑 如果您想要去除边缘的白色边框,请使用
110%
的宽度和高度以及-5%
的左边和顶部。这样会稍微放大您的背景图像,但边缘不会有实色渗入。感谢Chad Fawcett的建议。查看这个笔记本。
您将需要使用两个不同的容器,一个用于背景图像,另一个用于内容。
在示例中,我创建了两个容器,
.background-image
和.content
。它们都使用了
position: fixed
和left: 0; right: 0;
进行定位。它们显示的差异来自于为元素设置的不同z-index
值。