38 votes

CSS3 box shadow: à la fois extérieur et intérieur

Est-il possible de créer à la fois une ombre extérieure pour un effet 3D et un éclat intérieur? J'ai une div avec un fond vert lime sur une div bleue. Jusqu'à présent, j'ai les éléments suivants:

 .greendiv{
   background:darkgreen;
   box-shadow: box-shadow: 10px -7px 15px darkgray;
   box-shadow: lightgreen 0px 0px 3px inset;
}
 

Les couleurs réelles sont au format #ffffff. Il semble que la deuxième déclaration annule la première. Y a-t-il un moyen de contourner ceci?

64voto

thirtydot Points 114021

Il vous suffit de déclarer box-shadow une fois, et utiliser les deux versions à l'intérieur, séparés par une virgule:

http://www.w3.org/TR/css3-background/#the-box-shadow

La "box-shadow" la propriété attache une ou plus, déposez-les ombres de la boîte. L' la propriété est une liste séparée par des virgules les ombres, chaque spécifié par 2-4 longueur des valeurs, une option de couleur, et un option ‘encart de ce mot-clé.

Donc, pour vous:

.greendiv {
    background: darkgreen;
    box-shadow: 10px -7px 15px darkgray, lightgreen 0px 0px 3px inset;
}

Voir: http://jsfiddle.net/JzsAh/

Pensez également à utiliser le fournisseur préfixé propriétés de soutenir le plus grand nombre possible de navigateurs.

0voto

clintm Points 11

Pour ombre incrustée ..

     .box
    {
        width:270px;height:100px;
        box-shadow: inset  10px -10px 25px #1AC1A5;
    }
 

Plus d'échantillons d'ombres ... CSS Shadow

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X