First develop for a standards-compliant browser, then add (conditional) hacks to support IE. The other way around is just silly.
And have you ever tried to develop complex ui sites on IE? I'm sorry...it just sucks and there is no good way around that. And I'm someone who knows IE6/7 quirks pretty good. Their script debuggers are utter crap and their developer toolbar is the most ancient thing out there. At least in IE8 they are copying Firebug...at that point it might not suck as much but who knows until I use it a while.
I never understood all the IE hate, to be honest. Until Chrome came out, I used IE7 as my daily browser. It's just better than Firefox in my opinion.
I share your sentiment.. I develop against IE first then test it against the "good" browsers... which rarely screw it up. IE sucks for script debugging.. I mean EPIC suck. You're not even told what line of what file is screwed up (IE seems to concatenate everything into 1 file when giving the error report), but I've learned to rely on myself not to make common scripting mistakes, and created a cross-browser "console" object to aid in debugging.
Safari has the worst script debugging on the planet. It essentially tells you whether or not there was an error. Oh, wait... and how many errors, total. Thanks, Safari!
And yeah, it takes about the same level of effort to develop against IE as it does against FF. The advantage is that your stuff generally then works right in Firefox first try.
http://developer.apple.com/internet/safari/faq.html#anchor14 (among other google results)
But, then again, there apparently were several Google results.
http://dustincurtis.com/screenshots/Team_WhiteBoarding_with_...
If you recall, Netscape used that same box model until version 6. So if you'd like to look for a point where standards were broken, look to W3C and Mozilla. It's certainly not Microsoft's fault that the "standards" organization decided to change the fundamental way things are rendered in a browser.
see : http://books.google.com/books?id=ZCPWYFoWaMIC&pg=PA289&#...
"Standards organizations" are there for a reason, so that issues like this wouldn't be so egregrious. Microsoft has had a while to fix it, and 8 years later far too many people are still using an old deprecated browser.
This is only an issue for developers who target Firefox initially. That's the wrong way to go about web development. Run IE7 on your dev box and build everything against it. That's what your users will have, so that should be your first priority. Step two is making it work for FF.
The added benefit to that approach is that you'll find less cross platform issues. Going from IE -> Firefox is a lot easier than the other way around.