ul.box {
position: relative;
z-index: 1; /* prevent shadows falling behind containers with backgrounds */
overflow: hidden;
list-style: none;
margin: 0;
padding: 0; }
ul.box li {
position: relative;
float: left;
width: 250px;
height: 150px;
padding: 0;
border: 1px solid #efefef;
margin: 0 30px 30px 0;
background: #fff;
-webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
-moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset; }
ul.box li:before,
ul.box li:after {
content: '';
z-index: -1;
position: absolute;
left: 10px;
bottom: 10px;
width: 70%;
max-width: 300px; /* avoid rotation causing ugly appearance at large container widths */
max-height: 100px;
height: 55%;
-webkit-box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3);
-moz-box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3);
box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3);
-webkit-transform: skew(-15deg) rotate(-6deg);
-moz-transform: skew(-15deg) rotate(-6deg);
-ms-transform: skew(-15deg) rotate(-6deg);
-o-transform: skew(-15deg) rotate(-6deg);
transform: skew(-15deg) rotate(-6deg); }
ul.box li:after {
left: auto;
right: 10px;
-webkit-transform: skew(15deg) rotate(6deg);
-moz-transform: skew(15deg) rotate(6deg);
-ms-transform: skew(15deg) rotate(6deg);
-o-transform: skew(15deg) rotate(6deg);
transform: skew(15deg) rotate(6deg); }
Seien Sie vorsichtig, dass diese Boxen nicht innerhalb eines anderen Elements mit einem Hintergrund sitzen, da sonst die negativen z-index-Werte (die dafür erforderlich sind, damit dies funktioniert) die Schatten darunter zwingen und nicht angezeigt werden.
VIELEN DANK!!! Das ist großartig!
Ich werde die Seitenumschlag-Schatten mit dieser Technik auf meinen Websites erstellen. Ich überlege, wie ich es für IE degradieren kann, aber das ist eine andere Geschichte.
Danke!
IE ist kein Browser. LOL
Wirklich schönes Schnipsel, sieht wirklich schön aus
Hallo, schönes Schnipsel,
aber es macht Probleme, wenn ich eine Div mit einer Hintergrundfarbe habe und darin den Schnipsel-Code, und ich verstehe nicht warum??
Oh, ich verstehe. Bitte ignorieren Sie meinen Kommentar :P
Es ist ein schönes Schnipsel und ich liebe diese Art von Schatten. Normalerweise mache ich das mit Bildern, aber jetzt... Danke!
Ich werde verrückt und versuche, es zum Laufen zu bringen, wenn es sich innerhalb einer Div mit einer Hintergrund-Eigenschaft befindet.
Wie kommen die negativen Werte zustande? Warum zum Teufel erlaubt mir CSS nicht, :before und :after einen niedrigeren (positiven) Wert als das vordere Element zu geben? (d.h. 1, 2 und 3 statt -2, -1 und auto)
Die einzige Lösung, die ich gefunden habe, ist, der übergeordneten Div einen noch niedrigeren (negativen) z-index-Wert zu geben, aber das macht alles in dieser Div nutzlos.
Für Schatten, die hinter der Hintergrundfarbe eines Elternelements fallen, können Sie eine der folgenden Methoden verwenden – http://jsfiddle.net/D4qCm/1
Eureka! Ich habe die Lösung gefunden!! Dies kann auch dann erfolgen, wenn es in einer Div mit einer Hintergrundfarbe oder einem Bild verschachtelt ist!
Fügen Sie dem Element mit der Klasse .page-curl einfach style="-webkit-transform:rotate(0deg);transform:rotate(0deg);-moz-transform:rotate(0deg);" hinzu.
Ich möchte Kdes Quadros imitieren http://www.flickr.com/photos/martincasc/4373577269/ mit Text darüber. Bisher habe ich einen Verlauf für die ungeraden Listenelemente und einen entgegengesetzten Verlauf für die geraden. Vielleicht schaffe ich es.
Das ist wirklich schön, aber es funktioniert nicht in IE. Ich habe hier einen Weg gefunden, es browserübergreifend zu realisieren...
http://betterwebshop.com/blog/2011/05/cross-browser-css-page-curl-shadow
Sehr cool und schöner Effekt wirklich.
Danke…
Es funktioniert auf meinem Blog: http://www.medspatherapy.com
Wie kann man den Umschlag an nur einer Ecke vergrößern, bitte?
Das funktioniert nicht in der neuesten Version von Firefox. Es funktionierte vor zwei Tagen, bevor ich ein Upgrade durchführte. Ich sehe diesen Effekt in diesem Browser nirgends im Internet.
Hier funktioniert es wieder mit skewX() — die skew()-Unterstützung wurde aus Firefox entfernt.
http://jsfiddle.net/dropsoul/ts325/37/light/
Danke Christina, ich hatte den Seitenumschlag-Schatteneffekt auf ein paar Websites verwendet und am Wochenende bemerkt, dass sie alle in Firefox verschwunden waren. Jetzt gehe ich zurück und aktualisiere meine Stylesheets.
Es fügt dem Design einer Website wirklich etwas Interessantes hinzu. Danke
Danke für die großartige Idee. Beim Spielen damit bin ich auf Probleme mit Bildern im Hintergrund gestoßen. Irgendwelche Ideen?
http://jsfiddle.net/BpgXC/7/
Das Setzen des z-index von 's' auf '-2' erledigt die Arbeit.
Ich habe bemerkt, dass, wenn man einen Rahmen um das Element legt, dieser hinter den Schatten erscheint. Ich habe dies behoben, indem ich den z-index des übergeordneten Elements entfernt habe.
Ausgezeichnet, da der Effekt nicht verborgen ist, wenn andere Elemente mit Hintergrund unter dem Element mit dem Effekt existieren.
Ich habe nach einer Idee gesucht, dieses Problem zu lösen, und nicht erwartet, dass es gelöst werden kann, wenn das übergeordnete Element eine relative Position und einen großen z-index hat.