I nostri designer hanno un feticcio per le ombre fantasiose come queste, ma voglio evitare di usare gli sprite delle immagini. Invece mi piacerebbe creare questo solo con css3. E 'un po' difficile anche se per replicarlo pixel-perfect solo con css3:È possibile creare questa ombra esterna solo con un semplice CSS3?
Questo è il più vicino ho potuto ottenere, ma io non sono molto contento del risultato perché non voglio che l'involucro html in più per .box e anche l'effetto di dissolvenza a sinistra non sembra giusto:
Fiddle: https://jsfiddle.net/valmar/k8ugjwb2/3/
il mio tentativo di codice:
HTML
<div class="boxwrap">
<div class="box">content</div>
</div>
CSS
body{
background: #edefed;
}
.boxwrap{
width: 350px;
height: 365px;
position:relative;
}
.box{
width: 350px;
height: 350px;
background: #fff;
}
.box:after{
width: 350px;
height: 50px;
bottom: 26px;
display: block;
position:absolute;
content: " ";
z-index: -1;
-webkit-box-shadow: 0px 16px 21px -10px rgba(0,0,0,0.56);
-moz-box-shadow: 0px 16px 21px -10px rgba(0,0,0,0.56);
box-shadow: 0px 16px 21px -10px rgba(0,0,0,0.56);
-webkit-transform: rotate(-3deg);
-moz-transform: rotate(-3deg);
-o-transform: rotate(-3deg);
-ms-transform: rotate(-3deg);
transform: rotate(-3deg);
}
C'è qualche guru css là fuori che può creare una replica pixel-perfect di questa ombra, senza alcun margine di profitto in più rispetto <div class="box">content</div>
?
Potete suggerire prego che cosa è necessario essere l'output. – stanze
@stanze Cosa intendi per output? – Timo
Si può avere una "scatola" sfocata, trasparente, ruotata sotto la scatola attuale che ha una sfumatura lineare per dare l'effetto di dissolvenza sulla sinistra. Non semplifica il 'html', ma almeno dovrebbe sembrare più simile al design. – sodiumnitrate