Hogyan lehet létrehozni egy elhalványuló hatást CSS-sel a háttérben, annak tetején egy képpel?
Megpróbálom megismételni a képcsúszka a https://www.masterclass.com/
Megjegyzések
Válasz
Létrehozáshoz úgy nézhet ki, hogy beállíthatja a képet egy div háttereként, majd létrehozhat egy “fekete áttetsző feketére” színátmenetet a div-ben, hogy az megjelenjen a kép tetején.
.slideBanner{ background-image: url("../images/Ramsey.jpg"); } .slideBanner{ background: -moz-linear-gradient(left, rgba(0,0,0,0.65) 0%, rgba(255,255,255,0) 48%, rgba(2,2,2,1) 100%); /* FF3.6-15 */ background: -webkit-linear-gradient(left, rgba(0,0,0,0.65) 0%,rgba(255,255,255,0) 48%,rgba(2,2,2,1) 100%); /* Chrome10-25,Safari5.1-6 */ background: linear-gradient(to right, rgba(0,0,0,0.65) 0%,rgba(255,255,255,0) 48%,rgba(2,2,2,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#a6000000", endColorstr="#020202",GradientType=1 ); /* IE6-9 */ }
Ezt a színátmenet kódot a sok színátmenet generátor egyikéből találtam: http://www.colorzilla.com/gradient-editor/
Válasz
Valójában a háttereket láncolhatja CSS-ben, vesszővel elválasztva. Az első a legalacsonyabb, a második ráadásul et. Tehát csak annyit kell tennie, hogy először a képet, majd a színátmenetet állítja be.
A modern böngészőkben akár keverési módokat is használhat, hogy biztosítsa a kép szép keverési hatását.
I “Majd rád bízza a szükséges böngésző előtagok létrehozását (a másik válaszban linkelt generátor erre nagyon jó).
.slideBanner{ background: url("https://placeimg.com/500/500/nature") 0 0 no-repeat, radial-gradient(ellipse at center, rgba(0,0,0,0) 20%,rgba(0,0,0,1) 100%); background-blend-mode: multiply; }
JSfiddle igazolás: https://jsfiddle.net/synu8xk1/2/
:before
álelem t a png gradiens BG-képként való alkalmazásához a tényleges kép tetején.