Skip to the content...

Welcome to the David Walsh Blog. I'm a MooTools, Dojo, jQuery, CSS, and PHP Web Developer located in Madison, Wisconsin, United States. Please contact me if I can make your experience on my website better.

CSS Image Filters in Internet Explorer

8 Responses »

Internet Explorer provides for some really interesting CSS image effects. Of course, these effects are useless in any other browser (just how Microsoft intended) but they should be used like any other browser-dependent functionality -- used as enhancements only.

Note: Only IE users will see these image effects. Please switch to IE to experience the image effects.

Original Image

Horizontal Flip

.hflip	{ filter:fliph; }

Vertical Flip

.vflip	{ filter:flipv; }

The Wave

.wave { filter:wave(add = 0, freq = 5, lightstrength = 10, phase = 100, strength = 20); }

Frame Fade

.frame	{ filter:alpha(opacity = 100, finishopacity = 0, style = 3, startx = 20, starty = 40, finishx = 0, finishy = 0); }

X-Ray / Inverse

.xray { filter:xray; }

Blur

.blur { filter:blur(add = 0, direction = 300, strength = 10); }

Grayscale

.gray { filter:gray; }

Discussion

  1. March 26, 2008 @ 1:30 pm

    I like the effects, gives you more management to the images which are one of the type of contents that are not available to manipulate in css (including objects{videos, animations…}).

    Sad that IE can give you manipulation in this, but it doesn’t get better in supporting more transparency in png images.

  2. rob
    March 26, 2008 @ 3:37 pm

    Cute, but IE can’t do much of anything else right, so why bother? With every other browser near passing Acid3, while IE8 still struggles with basic properties, you should make an article about the multitude of standard things that can be done on every other browser but doesn’t work on IE.

  3. March 26, 2008 @ 3:38 pm

    These are interesting. Don’t forget about DropShadow(color,offX,offY)! Note that this will prevent your CSS from validating but neat effects.

  4. March 26, 2008 @ 5:52 pm

    Nice, Just wish IE would support more common image styles like Tony mentioned instead of making their own ones up.
    However saying that IE8 is getting better in CSS support than IE7/6.
    Does anyone know of a way of doing this in FF i wonder?

  5. March 27, 2008 @ 7:55 pm

    @pfwd:

    So I think that FF3 was going to have a similar feature called image filters but it got pulled. Maybe FF4?

  6. dan
    April 1, 2009 @ 8:04 pm

    The only way I know of doing it so it works cross-browser is to use 2 separate images and do a rollover, which of course can be done using pure CSS with no javascript (in case user has scripting disabled). Example:

    div#01 //set an id for the div
    {
    height: XXpx; //where XX is your actual dimension
    width: XXpx; //ditto
    background-image: url(‘image_a.jpg’);
    display: block;
    }

    div#01:hover
    {
    background-image: url(‘image_b.jpg);
    }

    .hide //define a class for image preload
    {
    display: none;
    }

    In your HTML:

    <img src=”image_b.jpg” class=”hide”> <!– This preloads the rollover image –>
    <div id=”01″></div>

    I’ve tried this in IE, Firefox, abd Safari and it works in all 3

Be Heard!

Share your thoughts with fellow developers of all skill levels! I want to hear from you!

Name*:
Email*:
Website:  
Wrap your code with <code> tags, f00!