2016-09-15 2 views
0

J'essaie d'ajouter une superposition rouge transparent à une image chaque fois que l'image a une classe tinted-image, je veux le faire avec CSS. En fait, je veux l'appliquer directement img tag. Est-ce possible?superposer un calque de couleur dans une image avec CSS

My JS fiddle

J'ai essayé ceci:

<img class="tinted-image" src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/3/owl1.jpg"></img> 

et CSS:

.tinted-image { 

    background: 
    /* top, transparent red */ 
    linear-gradient(
     rgba(0, 255, 0, 0.45), 
     rgba(0, 255, 0, 0.45) 
    ) 

} 

Et rien ne se passe.

Je ne veux pas utiliser un div, comme ci-dessous. La chose est que je veux l'implémenter directement dans la balise img.

<div class="tinted-div"></div> 
.tinted-div { 
    width:200px; 
    height:200px; 
    background: 
    /* top, transparent red */ 
    linear-gradient(
     rgba(0, 255, 0, 0.45), 
     rgba(0, 255, 0, 0.45) 
    ), 
    /* bottom, image */ 
    url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/3/owl1.jpg); 
} 

Aidez-moi s'il vous plaît? :(

+0

double possible de [image Teinte en utilisant CSS sans superposition] (http://stackoverflow.com/questions/12546499/tint-image-using-css-sans-overlay) –

Répondre

0

Vous pouvez obtenir un effet similaire en utilisant: après si cela aide

.overlay { 
 
    position: relative; 
 
    overflow: hidden; 
 
} 
 
.overlay:after { 
 
    content: ''; 
 
    position: absolute; 
 
    width: inherit; 
 
    height: inherit; 
 
    top: 0; 
 
    left: 0; 
 
    right: 0; 
 
    bottom: 0; 
 
    background: rgba(0, 255, 0, 0.5); 
 
}
<div class="overlay"> 
 
    <a href="#"> 
 
    <img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/3/owl1.jpg"> 
 
    </a> 
 
</div>

+0

@abokuro est-ce possible sans utiliser cette superposition div? –

+0

aidez-moi s'il vous plaît :( –

+1

Je ne pense pas que ce soit possible en utilisant seulement CSS. http://stackoverflow.com/questions/18322548/black-transparent-overlay-on-image-hover-with-only-css – sol