views:

65

answers:

5

Hi guys,

maybe it's completly my foult to handle so blind, but yes, now I am in a bad situation.

Since month I build an auctioneering platform, the deadline is getting shorter and now - at the end of the project - we do a browser test with older browsers (e.g. and the worst: ie6).

What should I say? The complete design fails in IE6. The logo is not transparent, the login button away in god knows where and the complete menu-bar 100px out of the monitor. In IE7, IE8, Opera 10 and FF3 all is very okay, no problem at all, almost perfect.

So, how I could handle with the fact that in IE6 my complete design is a simple fail? Any ideas to rescue my head? =)

+1  A: 

Unless you have a requirement to support IE6, drop it. No need to waste your time and energy to prolong the life of a dinosaur.

EDIT: Seems you have to support IE6. Then you have no other option as to start fixing it, step by step. Make sure you abstract and formulate precisely each problem you have with IE6. If you do, google will give you a workaround quickly.

Developer Art
As someone who regularly has to deal with IE6, I'd add "for your own sanity".
Matthew Scharley
Now, my customers goal are internet users and IE6 is too much used then simply drop it, I think.
Kovu
Actually, outside corporate users who are going to be checking from their work PC's, you'll be hard pressed to find an IE6 user.
Matthew Scharley
Just wanted to add the same answer => "If possible - convince everyone to drop IE6 support." :)
Arnis L.
+4  A: 

The first thing to do is to learn an important lesson: when starting a project, find out if IE6 is a target platform and test during development, not at the end of the project.

Second, start fixing it. Add a new stylesheet for IE6 in a conditional comment and start overriding the broken parts.

David Dorward
Conditional Comments ftw!
Tom
Starting it, thank you for the conditional comment thing. Can I easyly overwrite CCS classes with this?
Kovu
CSS rule-sets are overridden with normal specificity rules. http://www.w3.org/TR/CSS21/cascade.html#specificity
David Dorward
A: 

Have a look at this and maybe you can draw your own conclusions... Much Ado About IE6

Nicholas Murray
… but keep in mind that the audience of Digg has a rather smaller proportion of IE6 users than average and you shouldn't take those percentages without a heap of salt.
David Dorward
Yes of course, but I suppose the most salient point for me was that 'Three out of four IE6 users on Digg said they can’t upgrade due to some technical or workplace reason' - so your target audience should dictate support or otherwise for IE6.
Nicholas Murray
A: 

For me, the best solution is Conditional Comments and Chrome Frame.

xoner
I start to read about chrome frame, but I didn't get the point I think, can you wirte a few sentence why and what are the very pros?
Kovu
Pros: Things work very nicely for the tiny number of people using the early release of the software. Cons: It does nothing for the vast majority of users. Nothing at all. And many IE6 users can't install it (due to corporate policy).
David Dorward
+3  A: 

First, don't panic. It's not that hard to get the layout working properly in IE6. A lot of stuff is possible with IE6 you just have to do things a bit differently. It doesn't take an awful lot of time to get a page IE6 compatible (most of the time).

Here are the main key issues off the top of my head:

  • First, conditional comments are your friends. Use them to pull in the IE6 versions of your CSS files.
  • No transparent PNGs. Use either transparent GIFs, non-transparent images or google for IE6 transparent PNG hack.
  • No clear:left or clear:right. Just use clear:both.
  • Drop down lists below divs appear on the top of the divs: several solutions available, either hide the dropdowns before displaying the foreground div or use the iframe trick (create an iframe of the size of the foreground div and put it below the div, that will hide the dropdown)
  • No position: fixed. You will have to live with that. You can try position: absolute instead or some javascript but that will be really slow. (Let's just say, JavaScript execution speed is not one of IE6's great strengths).
  • IE6 has CSS gradients and CSS shadows (just like FF and Safari) but you access them differently, Google IE CSS filters to learn more.
  • Try to use jQuery or some other JavaScript library, they hide a lot of complexity and browser incompatability.
  • The rest is just fiddling with dimensions. It takes a bit of a time but it's not that hard.

Good luck!

DrJokepu
You must be some kind of wizard if you can just say: "It takes a bit of a time but it's not that hard.". :)
Arnis L.