Andy Mosmiller wrote:

> I don't know anything about the issues with IE7.  My health is poor,
> so my research on such issues is extremely limited.  I'd love any
> help you could offer, both for fixing the site above and for handling
> IE7 generally.  Is there a comprehensive site dedicated to hacking
> IE7 and explaining when such hacking is needed?  Is it possible to
> run IE7 with older versions as well?  I have been very hesitant to
> upgrade because I want to be able to test in 6.


Andy,

I'm glad to help.

___ IE stylesheets ___

I see that you started off on the right foot, using conditional comments to 
relegate IE fixes to their own stylesheets:

    <!--[if IE]>
    <link rel="stylesheet" type="text/css" href="kipkeIE.css" />
    <![endif]-->

Below that, you can add additional stylesheet calls for problems limited to 
specific version(s) of IE. For example:

    <!--[if IE 7]>
    <link rel="stylesheet" type="text/css" href="kipkeIE_7.css" />
    <![endif]-->

kipkeIE_7.css would only contain the *very few* fixes needed to make IE7 
behave.

Don't worry about too many stylesheets; it's actually better to have several 
IE stylesheets, each tailored to a specific version (or a group of versions, 
e.g. "IE before 6") than to use various IE hacks all mixed together. In my 
latest project, below the main stylesheet I find four conditional comments 
calling these optional stylesheets:

    IE.css
    IE_5.5._and_below.css
    IE_6_and_below.css
    IE_7.css

    (for IE 5.5 and below, I use <!--[if IE lt 6]> rather than <!--if IE lte 
5.5]> due to some version weirdness)

As I reload pages in various versions of IE from oldest to latest (5.0, 5.5, 
6, 7), I can see where a bug stops happening, which tells me which 
stylesheet should contain the fix. It's educational, well-organized, and 
time-effective.

___ Multiple IEs ___

Normally, you can't run different versions of IE on a single Windows 
environment -- each new install clobbers the others. These days, we have 
access to "standalone versions" of IE that coexist peacefully alongside each 
other.

Let Windows install IE7 as your official browser, then go to 
http://tredosoft.com/Multiple_IE and download a single file that will 
install any old version of IE you choose as standalones. You then have 
access to any and all versions on your PC for side-by-side testing as 
described above. IE is still a bear to work against, but these will help 
tremendously.

___ Web Developer toolbar ___

In Firefox, I use its excellent DOM Inspector to debug my CSS. (The optimal 
workflow is to code for standard-compliant browsers first, then go back and 
fix whatever's wrong with IE.) In IE, you can install the Web Developer 
toolbar from 
http://www.microsoft.com/downloads/details.aspx?FamilyID=e59c3964-672d-4511-bb3e-2d5e1db91038&displaylang=en
 - 
it's not as good as Firefox's DOMi, but it's still quite useful. (Especially 
when checking whether a troublesome element or its container shows 
"hasLayout" = true ("-1"), the magic bullet for *tons* of IE problems.)



By coding for Firefox and debugging with its DOMi first, then using IE's Web 
Developer toolbar and adding IE version-specific fixes in separate 
stylesheets using conditional comments, you have a great workflow guaranteed 
to help maintain your sanity.

Charles 

______________________________________________________________________
css-discuss [EMAIL PROTECTED]
http://www.css-discuss.org/mailman/listinfo/css-d
IE7 information -- http://css-discuss.incutio.com/?page=IE7
List wiki/FAQ -- http://css-discuss.incutio.com/
Supported by evolt.org -- http://www.evolt.org/help_support_evolt/

Reply via email to