So right now I'm debugging a site I developed that looks fine in all browsers except IE. When run in Explorer, the main heading was shifted down about 20 pixels from where it should be. So i'm doing some digging on how to modify the CSS for IE only and leave the others intact, and I stumbled across IE conditional statements. Basically, these are HTML comments with an 'if' in them, and only IE (5 and above) recognizes and processes them. (Ahh leave it to M$ to overstep the HTML boundaries).
The they look like this:
<!--[if "condition" IE "version number"]> <p>Only display in IE if the condition is met</p> <![endif]-->
There are 6 conditions that can be applied (there's a "logical not" case too):
1. [if IE] – if above or equal to version 5
2. [if IE 6] – if equal to version 6
3. [if lt IE 6] – if less than version 6
4. [if lte IE 6] – if less than or equal to version 6
5. [if gt IE 6] – if greater than version 6
6. [if gte IE 6] – if greater than or equal to version 6
Valid version numbers are 5, 5.5, 6, and 7. There is alco support for specific version numbers, such as 5.0453.
So here's where it comes in handy; you can add styles and stylesheets for IE only, like so:
<!--[if gte IE 5]> <style type="text/css">@import "IE_only.css";</style> <![endif]-->