Mere
Sådan anvender du et CSS-filter på et baggrundsbillede
Jeg har en JPEG-fil, som jeg bruger som baggrundsbillede på en søgeside, og jeg bruger CSS til at indstille det, fordi jeg arbejder i Backbone.js kontekster:
background-image: url("whatever.jpg");
Jeg vil gerne anvende et CSS 3 slørfilter kun på baggrunden, men jeg er ikke sikker på, hvordan jeg skal style kun dette ene element. Hvis jeg prøver:
-webkit-filter: blur(5px);
-moz-filter: blur(5px);
-o-filter: blur(5px);
-ms-filter: blur(5px);
filter: blur(5px);
lige under background-image
i min CSS, så styles hele siden og ikke kun baggrunden. Er der en måde at vælge kun billedet og anvende filteret på det? Alternativt, er der en måde at slå sløret fra for alle andre elementer på siden?
449
3
Se denne [pen] (http://codepen.io/aniketpant/pen/DsEve).
Du skal bruge to forskellige containere, den ene til baggrundsbilledet og den anden til dit indhold.
I eksemplet har jeg oprettet to containere,
.background-image
og.content
.De er begge placeret med
position: fixed
ogleft: 0; right: 0;
. Forskellen i visningen af dem kommer fraz-index
-værdierne, som er indstillet forskelligt for elementerne.Jeg undskylder for Lorem Ipsum teksten.
Opdatering
Tak til Matthew Wilcoxson for en bedre implementering ved hjælp af
.content:before
http://codepen.io/akademy/pen/FlkzBDu skal omstrukturere din HTML for at kunne gøre dette. Du er nødt til at sløre hele elementet for at sløre baggrunden. Så hvis du kun vil sløre baggrunden, skal den være sit eget element.
I fanen
.content
i CSS ændrer du den tilposition:absolute
. Ellers vil den side, der gengives, ikke kunne rulles.