8
votes

Box-Shadow sur des divs flottants

J'ai eu un problème de repère-box-ombres sur des divs flottants! Ive testé en chrome et firefox avec le même résultat.

    <html>
        <head>
        </head>
        <body>
            <div style="float:left; clear: left; background-color: #aaa; -moz-box-shadow: 0px 8px 8px #000; width: 200px; height: 200px;">
            </div>
            <div style="float:left; clear: left; background-color: #aaa; -moz-box-shadow: 0px 8px 8px #000; width: 200px; height: 200px;">
            </div>
        </body>
    </html>


0 commentaires

3 Réponses :


16
votes

fonctionne pour moi dans Firefox 4, mais ce code ne fonctionnera jamais sur chrome ou safari, le -moz est une balise de fournisseur indiquant Mozilla.

Vous devez ajouter tout ce qui suit xxx

-webkit est la balise du fournisseur pour chrome / safari, les éléments suivants ajouteront des ombres de goutte pour les fournisseurs qui le supportent et ensuite quand il est universellement pris en charge. La dernière règle couvrira tous les navigateurs.

EDIT: Pour obtenir le top DIV DropsShadow sur l'autre élément, vous devez Position: relative puis donnez-lui un z-index plus haut que le bas.


4 commentaires

Vous avez vraiment 2 divs avec des ombres? Le DIV sur le dessus devrait lancer une ombre sur la DIV ci-dessous. Tout ce que je vois, c'est une grande boîte avec ombre.


Désolé, votre question est un peu ambiguë. Vous devez positionner relativement votre élément, puis utiliser Z-Index pour obtenir le sommet sur l'autre. Voir: Jsfiddle.net/yjprn


Impressionnant: Dill Fixez la question.


Position: Relative est important et corrigé mon problème!



1
votes

a l'air bien dans Firefox car vous utilisez -moz-box-shadow , pour navigateurs WebKit, vous devrez utiliser -webkit-box-shadow


2 commentaires

Ouais je sais à ce sujet, je viens de garder le code petit. Je ne travaille pas pour moi en 3.6. Voyez-vous 2 boîtes avec ombre ou une?


Les deux ont une ombre à droite, la plus basse a une ombre au fond, si vous voulez que les deux d'avoir une telle sabbique inférieure, séparez légèrement la rapidité de la DIV '
' ''



3
votes

Qu'est-ce qui ne va pas avec eux? Si vous craignez de ne pas voir l'ombre inférieure du haut div c'est parce que vous avez besoin d'une petite séparation. Si vous rencontrez des difficultés pour voir la boîte-shadow, c'est que vous devez utiliser des préfixes spécifiques au fournisseur à ce stade, comme.

Démo: jsfiddle.net/q5yf3

Si vous voulez qu'ils soient coincés ensemble, donnez simplement le premier div A z-index avec Position: relatif et il ressemblera à la façon dont vous voulez.

html: < / p> xxx

CSS: xxx

Démo: jsfiddle.net/vavhy

Cela dit, je recommanderais également à la recherche d'utiliser rgba () au lieu de valeurs hexagonales pour Boîte -shadow couleur car il rend l'ombre beaucoup plus naturellement sur des arrière-plans non plats.


3 commentaires

Oui, je n'ai pas de marge entre mes divs, et j'ai besoin de les garder coincés sur Togerter ou au moins les faire paraître. Dès que j'apporterais l'arrière-plan, l'ombre disparaît.


Ah, j'ai ajouté une deuxième partie à ma réponse qui concerne votre problème, après le premier lien vers une démo.


Malade garder le conseil rgba () à l'esprit lorsque j'essaye cela. Merci beaucoup.