11
votes

Ombres CSS les quatre côtés de div

Je veux atteindre cela dans CSS - pas CSS3 car je veux que ce soit soutenu par tous les navigateurs BG avec des ombres de tous les côtés

c'est-à-dire un contenu contenant de la div, avec les ombres de tous les côtés. La zone supérieure sera utilisée pour la navigation. J'ai cherché des tutoriels mais jusqu'à présent à rien. Aide!


3 commentaires

Triste, mais à savoir ne pas afficher les ombres fabriquées avec CSS. Vous devez créer des images comme des ombres (certains gifs, IE6 NE PAS afficher le canal alpha de fichiers PNG)


Est-ce une boîte dynamique ... ce qui signifie la largeur / la hauteur chaque changement en fonction du contenu?


Pour la compatibilité croisée Compatibilité Drop Ombres utilisant uniquement CSS ... Vérifiez ces liaisons
dev.opera.com/articles/view/cross-Browseer-box-shadows
coolhomepages.com/...


11 Réponses :


0
votes

Vous devez créer plusieurs images. Un pour le côté gauche. Un pour la droite. Un pour le bas, etc., puis plusieurs Div et définir le fond de chacun d'eux.


0 commentaires

0
votes

Vous pouvez le faire avec trois divs, en supposant qu'ils sont tous identiques (fixes) largeur: xxx


0 commentaires

0
votes

Alternativement, vous pouvez faire une grosse image et utiliser cela comme arrière-plan pour la zone de contenu entière; puis codez-le-code les positions et tailles des éléments contenus.


0 commentaires

4
votes

CSS3PIE est un outil qui vous permet d'utiliser certaines propriétés CSS3 dans IE.

Qu'est-ce que vous essayez de faire est assez répandu CSS3 chez les navigateurs plus récents et que vous aimez vraiment bien (et facilement) dans IE avec le fichier .htc que vous pouvez télécharger à partir de là.

Quant au balisage, je ne vois que 2 éléments, avec le top 1 flotté, par exemple. Vous devriez jouer avec z-index pour masquer l'excès d'ombres. Sur ce site, il y a aussi un effet très similaire, vous devriez être capable de l'adapter à vos besoins.


1 commentaires

bonne référence. Je l'ai utilisé avant quelques mois, mais pour des raisons, je l'ai laissée. Merci que vous le rappelez!



1
votes

Comme le dit Ventus n'est pas possible d'utiliser des ombres CSS avec IE (seulement IE9). Mais vous pouvez utiliser Shadowon . C'est un grand plugin JQuery et une utilisation très facile à utiliser. Avec cela, vous aurez une compatibilité croisée croisée.


0 commentaires

3
votes

Cela devrait fonctionner dans tous les navigateurs:


    .allSidesShadow {
        box-shadow: 2px 2px 19px #aaa;
        -o-box-shadow: 2px 2px 19px #aaa;
        -webkit-box-shadow: 2px 2px 19px #aaa;
        -moz-box-shadow: 2px 2px 19px #aaa;

        /* For IE 5.5 - 7 */
        /* for IE4 - IE7 */
        filter:
            progid:DXImageTransform.Microsoft.Shadow(Strength=9, Direction=1, Color=#C4C4C4),
            progid:DXImageTransform.Microsoft.Shadow(Strength=9, Direction=90, Color=#C4C4C4),
            progid:DXImageTransform.Microsoft.Shadow(Strength=9, Direction=180, Color=#C4C4C4),
            progid:DXImageTransform.Microsoft.Shadow(Strength=9, Direction=270, Color=#C4C4C4);
        -ms-filter: "
            progid:DXImageTransform.Microsoft.Shadow(Strength=9, Direction=1, Color=#C4C4C4),
            progid:DXImageTransform.Microsoft.Shadow(Strength=9, Direction=90, Color=#C4C4C4),
            progid:DXImageTransform.Microsoft.Shadow(Strength=9, Direction=180, Color=#C4C4C4),
            progid:DXImageTransform.Microsoft.Shadow(Strength=9, Direction=270, Color=#C4C4C4)
        ";
    }


0 commentaires

18
votes

Box Shadow fonctionne dans tous les navigateurs modernes [IE> 8], ce code n'utilise aucune image et fonctionne dans tous les navigateurs dans les versions IE ci-dessous 9.

 box-shadow:2px 2px 10px 10px #C9C9C9;
 -webkit-box-shadow:2px 2px 10px 10px #C9C9C9;
 -moz-box-shadow:2px 2px 10px 10px #C9C9C9;

  /* For IE<9 */  
  filter:
  progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=0,strength=5),
  progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=45,strength=2),
  progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=90,strength=5),
  progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=135,strength=5),
  progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=180,strength=10),
  progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=225,strength=5),
  progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=270,strength=5),
  progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=315,strength=2);


2 commentaires

@Certaine merci d'avoir souligné, j'ai mis à jour des styles pour le faire fonctionner dans IE.


Seul le dernier filtre s'appliquait pour moi. Pour que tous les côtés travaillent pour moi dans IE8, je devais supprimer les virgules. Selon l'article suivant de MSDN, ils sont séparés par un espace, pas une virgule: msdn.microsoft.com/en-us/library/ms532847 (v = vs.85) .aspx



1
votes

La réponse postée par Sekar a besoin d'un petit édition,

box-shadow:2px 2px 10px 10px #C9C9C9;
-webkit-box-shadow:2px 2px 10px 10x #C9C9C9;
-moz-box-shadow:2px 2px 10px 10px #C9C9C9;


0 commentaires

1
votes
box-shadow: inset 0 0 3px 0 #000;
Means 0 pixel left, 0 pixel right, 3px blur, 0 pixel diffuse, use a color slightly darker than the BGs.

0 commentaires

1
votes

Je ne peux pas voir votre photo maintenant, mais pour toutes les ombres latérales, j'utilise le code ci-dessous:

box-shadow: 0 0 5px 0 #000;


0 commentaires

0
votes

Vous pouvez placer le code suivant dans la DIV afin de déposer des ombres sur les quatre côtés.

-webkit-box-shadow: 0 0 10px rgba(0,0,0,.1);
box-shadow: 0 0 10px rgba(0,0,0,.1);    


0 commentaires