28 Apr, 2010

Crossbrowser CSS drop shadow

Categoriën: CSS3 |IE5 |IE6 |IE7 |IE8 |crossbrowser |hack |ms-filter |solution

Drop shadow – ofwel de illusie dat iets zweeft en diepte heeft – wordt al jarenlang met afbeeldingen gedaan, ofwel met nuffige semi-CSS oplossingen.
CSS3 is nog niet voor elke browser 100%, maar drop shadow is één van de zaken die we nu reeds kunnen doen en het werkt in:

  • Firefox 3.5+
  • Safari 3+
  • Google Chrome
  • Opera 10.50
  • Internet Explorer 5.5+

CSS

.shadow {
  -moz-box-shadow: 3px 3px 4px #000; /* Firefox/Mozilla */
  -webkit-box-shadow: 3px 3px 4px #000; /*Safari/Chrome */
  box-shadow: 3px 3px 4px #000; /* Opera & hoe het zou moeten */
  /* Voor IE 8 */
  -ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#000000')";
  /* Voor IE 5.5 - 7 */
  filter: progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#000000');
}

Nartuurlijk zal je de ms-filter & filter via conditional comments laden?

Gerelateerde Snippets

5 Reakties op "Crossbrowser CSS drop shadow"

Jeffrey

June 15th, 2010 at 21:51

1

Hallo,

Handig! Werkt goed IE. Werkt echter niet bij mij in Chrome, Safari en Firefox (Opera nog niet getest). Ga even zoeken wat ik fout doe.

Theo HUbenet

July 30th, 2010 at 23:18

2

De microsoft schaduw filter is nooit echt een schaduw, dus ik gebruik de Glow filter in combinatie met de Blur en een beetje Opacity:

FILTER: progid:DXImageTransform.Microsoft.Glow(color=#898989,strength=7)
progid:DXImageTransform.Microsoft.Blur(pixelradius=6)
progid:DXImageTransform.Microsoft.Alpha(Opacity=80);

maarten

August 1st, 2010 at 07:59

3

Fantastisch! Lang op zoek geweest naar een shadow css en dit was wat ik precies zocht. Geen geklooi met plaatjes e.d. werkt ook in IE goed. Je post heeft me heel wat tijd gescheelt. Bedankt man!

Jeroen

August 20th, 2010 at 07:58

4

Ik dacht, laat ik nog is een poging doen om een schaduw via CSS weer te laten geven.
Dit stukje CSS werkt perfect in IE 6, 7, 8, Nieuwste Firefox, Safari (win), Chrome en Opera versie.

Ik merkte echter wel dat ik de div waar ik de schaduw op toepaste een background mee moest geven om de schaduw zichtbaar te maken.

Ontzettend bedankt voor de css, dit scheelt me ontzettend veel geklooi met stomme plaatjes.

Michel

September 2nd, 2010 at 19:44

5

Hij doet het bij mij in IE niet. Heb het als om de omsluitende div gezet (div staat om de inhoud van een gehele pagina), what is loss?

Reaktie formulier


Advertenties

Volgende nieuwe Snippet:

  • Momenteel niks gepland.