Turiu JPEG failą, kurį naudoju kaip paieškos puslapio fono paveikslėlį, ir naudoju CSS jam nustatyti, nes dirbu Backbone.js kontekste:
background-image: url("whatever.jpg");
Noriu fonui taikyti tik CSS 3 suliejimo filtrą, bet nežinau, kaip stilizuoti tik šį vieną elementą. Jei pabandysiu:
-webkit-filter: blur(5px);
-moz-filter: blur(5px);
-o-filter: blur(5px);
-ms-filter: blur(5px);
filter: blur(5px);
tik po background-image
, mano CSS stilizuoja visą puslapį, o ne tik foną. Ar yra būdas pasirinkti tik paveikslėlį ir jam taikyti filtrą? Ar yra būdas tiesiog išjungti suliejimą kiekvienam kitam puslapio elementui?
Patikrinkite šį [rašiklį] (http://codepen.io/aniketpant/pen/DsEve).
Turėsite naudoti dvi skirtingas talpyklas - vieną fono paveikslėliui, kitą - turiniui.
Šiame pavyzdyje sukūriau du konteinerius: .background-image
ir .content
.
Abu jie patalpinti su position: fixed
ir left: 0; right: 0;
. Skirtumas juos atvaizduojant atsiranda dėl z-index
reikšmių, kurios elementams nustatytos skirtingai.
.background-image {
position: fixed;
left: 0;
right: 0;
z-index: 1;
display: block;
background-image: url('http://666a658c624a3c03a6b2-25cda059d975d2f318c03e90bcf17c40.r92.cf1.rackcdn.com/unsplash_527bf56961712_1.JPG');
width: 1200px;
height: 800px;
-webkit-filter: blur(5px);
-moz-filter: blur(5px);
-o-filter: blur(5px);
-ms-filter: blur(5px);
filter: blur(5px);
}
.content {
position: fixed;
left: 0;
right: 0;
z-index: 9999;
margin-left: 20px;
margin-right: 20px;
}
<div class="background-image"></div>
<div class="content">
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis aliquam erat in ante malesuada, facilisis semper nulla semper. Phasellus sapien neque, faucibus in malesuada quis, lacinia et libero. Sed sed turpis tellus. Etiam ac aliquam tortor, eleifend
rhoncus metus. Ut turpis massa, sollicitudin sit amet molestie a, posuere sit amet nisl. Mauris tincidunt cursus posuere. Nam commodo libero quis lacus sodales, nec feugiat ante posuere. Donec pulvinar auctor commodo. Donec egestas diam ut mi adipiscing,
quis lacinia mauris condimentum. Quisque quis odio venenatis, venenatis nisi a, vehicula ipsum. Etiam at nisl eu felis vulputate porta.</p>
<p>Fusce ut placerat eros. Aliquam consequat in augue sed convallis. Donec orci urna, tincidunt vel dui at, elementum semper dolor. Donec tincidunt risus sed magna dictum, quis luctus metus volutpat. Donec accumsan et nunc vulputate accumsan. Vestibulum
tempor, erat in mattis fringilla, elit urna ornare nunc, vel pretium elit sem quis orci. Vivamus condimentum dictum tempor. Nam at est ante. Sed lobortis et lorem in sagittis. In suscipit in est et vehicula.</p>
</div>
Atsiprašau už Lorem Ipsum tekstą.
Dėkojame Matthew Wilcoxson už geresnį įgyvendinimą naudojant .content:before
http://codepen.io/akademy/pen/FlkzB
Norint tai padaryti, reikia pertvarkyti HTML struktūrą. Kad fonas būtų užtušuotas, turite užtušuoti visą elementą. Taigi, jei norite nutrinti tik foną, jis turi būti atskiras elementas.