2015-07-21 16 views
5

Sto cercando di creare un documento pubblicato in puro css3 con transizioni e box-shadow. Finora ho realizzato una carta con le ombre su entrambi i lati, ma vorrei far sembrare questo: enter image description herePostato carta css3

è che anche possibile senza immagini?

.shadow { 
 
    width: 150px; 
 
    height: 150px; 
 
    background-color: yellow; 
 
    position: relative; 
 
} 
 
.shadow:after { 
 
    position: absolute; 
 
    right: 10px; 
 
    left: auto; 
 
    -webkit-transform: skew(8deg) rotate(3deg); 
 
    -moz-transform: skew(8deg) rotate(3deg); 
 
    -ms-transform: skew(8deg) rotate(3deg); 
 
    -o-transform: skew(8deg) rotate(3deg); 
 
    transform: skew(8deg) rotate(3deg); 
 
}
<div class="shadow"> 
 
    edit this even further 
 
</div>

+1

hai potuto inserire il codice di quello che hai provato? – Persijn

+0

. Ombreggiatura: dopo { \t a destra: 10px; sinistra: auto; -webkit-transform: skew (8deg) ruota (3deg); -moz-transform: skew (8deg) ruota (3deg); -ms-transform: skew (8deg) ruota (3deg); -o-transform: skew (8deg) ruota (3deg); transform: skew (8deg) ruota (3deg); } Potresti incollare più ... Numero massimo di caratteri .... – WeBWeB

+0

In genere inserisci il codice o il codice di esempio di ciò che stai cercando di fare quando fai domande. Io modificherò in ciò che hai postato nel commento. Modifica di nuovo per aggiungere il tuo codice. – Persijn

risposta

4

Ecco il mio tentativo, giusto per dare l'idea.

Richiede un sacco di regolazione artistica, ma ha tutti gli elementi necessari.

Incluso retro-visibilità: nascosto; grazie a Harry suggerimento

.test { 
 
    width: 300px; 
 
    height: 300px; 
 
    left: 50px; 
 
    top: 50px; 
 
    border-bottom-left-radius: 250px 45px; 
 
    position: absolute; 
 
    overflow: hidden; 
 
    transform: rotate(-19deg); 
 
    box-shadow: -9px 10px 31px 6px gray; 
 
    backface-visibility: hidden; 
 
} 
 

 
.test:after { 
 
    content: ""; 
 
    width: 100%; 
 
    height: 100%; 
 
    position: absolute; 
 
    background-color: yellowgreen; 
 
    border-bottom-left-radius: 45px 250px; 
 
    background-image: radial-gradient(circle at 50px 180px, rgba(255,255,255,0.3), transparent 70px), 
 
    radial-gradient(circle at 85px 215px, rgba(255,255,255,0.4), transparent 70px), 
 
    radial-gradient(circle at 120px 250px, rgba(255,255,255,0.3), transparent 70px); 
 
    box-shadow: -9px 10px 14px 22px gray; 
 
}
<div class="test"></div>

+1

Tentativo molto bello. Si potrebbe aggiungere 'backface-visibility: hidden;' al genitore per rendere la forma ancora più liscia. – Harry

+1

@Harry Grazie! – vals