Hinzufügen von CSS-inset box-shadow, um das parent-element over the top of a Kind Bild
Ich versuche, fügen Sie Schatten auf das parent-Objekt, in dem ein Kind <img>
element positioniert ist drin. Ich wan die inset-Schatten überlagern das Bild.
Mein HTML code ist:
<section class="highlights">
<img src="images/hero.jpg" alt="" />
</section><!-- End section.highlights -->
und CSS:
.highlights {
height: 360px;
padding: 0;
position: relative;
overflow: hidden;
opacity: 0.9;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
z-index:1;
}
.highlights img {
height: auto;
width: 100%;
margin: 0 auto;
display: block;
position: relative;
}
.highlights {
-webkit-box-shadow: inset 0 0 10px 0 rgba(0, 0, 0, 0.2);
box-shadow: inset 0 0 10px 0 rgba(0, 0, 0, 0.2);
}
Schatten ist nicht angezeigt für mich. Was habe ich falsch gemacht?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das problem ist, dass das Bild gerendert wird, über die Oberseite des Einschub-box-shadow.
Gibt es 2 Möglichkeiten, die ich denken kann, dies zu tun, mit "Deckkraft" auf der
<img>
zu schieben, hinter den Schatten, und der zweite Weg, um die position des inset-Schatten über der Oberseite des Bildes. Ich bevorzuge die zweite Methode, da Sie die volle Deckkraft des Bildes beibehalten werden kann.Hinweis: ich habe die Grenze groß und rot für die demonstration.
Lösung 1 demo
HTML
CSS
Lösung 2 demo
CSS
:before
würde auch noch gut funktionieren, aber den doppelten Doppelpunkt eingeführt wurde in CSS3 die Unterscheidung zwischen den CSS-pseudo-Klassen (für Ausrichtung auf ein bestimmtes element ist-Zustand) und diese Elemente die kann Stil von teilen eines Dokuments.