I've recently started using CSS3PIE (http://www.css3pie.com) in production and can only recommend it. It enables you to use CSS3 declarations such as box-shadow and border-radius in Internet Explorer, even under version 6!
It's trivial to use and much faster than IE7.js since it relies on the browser engine to do most of the work parsing selectors etc. The author Jason Johnston is very responsive in the forums as well. Even better, the upcoming version 0.11 of Compass (http://beta.compass-style.org) includes a mixin for PIE which makes adding cross-browser rounded corners a matter of two lines.
Didn't think I'd see this happen in my lifetime...
This is a great/easy solution - thanks for posting this.
I spent maybe 5 minutes adding this to my site, and I have to say I'm impressed. Copy the file to your server, add one new tag to your css wherever your radius css defs are and viola, done.
Prior to using this I was able to get IE looking nearly identical to Chrome/FF/Safar - except for drop-shadows and rounded corners. I've been pretty strict about not deviating from the open standards and this has actually caused several arguments between me and one of my biz partners (he just doesn't get why I refuse to 'fix' the issue in IE with one of the graphic hacks out there - and has been seeking advice from designers about this even!).
So yeah, huge thanks again because not only does this solution thorough rocks for what I needed and took no time to implement, but also now my biz partner is going to have one less thing to fight with me about (and probably move back on to telling clients about new features he wants that I have't started yet...).
I haven't looked into that; the designer we used didn't use that effect and I've been strictly 'painting by numbers' trying to visually match IE to everything else. Sounds like a pain though.
Before using this make sure you write valid HTML and valid CSS. I found this to be the best remedy for IE issues. Not that IE is particularly fond of standards, however, sometimes adding something like "position:relative" to the stylesheet will solve confusing problems.
For JS use Prototype or jQuery and voila, IE renders quite fine.
I didn't express myself well. It was an example where a style attribute may be implicit in one browser, but lead to incorrect rendering in another. In other cases it may be a hack. So I guess the advice is: be explicit.
btw: Microsoft must be the least "green" software-company ever. All the electricity spent on figuring out how to write css for IE.. :)
However, while we're talking about fixing IE6, who wants to port WebKit to Javascript with me?
I think you'd have better luck porting it to Alchemy[1] and running it through Flash. Even if users don't have the plugin (many will[2]) you could take advantage of Adobe's drive-by Flash installation (something I strangely find myself wishing Microsoft would adopt for IE updates).
I've pondered if writing your entire website in canvas/svg (a la Raphael) is the only way have it (100%) consistent across IE6-8, Chrome, and Firefox. That way you throw the html renderer of the browser out of the window and you're drawing your own vectors.
But even so, you'll probably hit some weirdness in IE6's jscript implementation.
However, excanvas was quite slow though, at least last I tried it.
I suppose if you count DOM bugs, like the memory leak, that's a problem. That's where jQuery is amazingly helpful(and presumably other libraries like it).
Considering Raphael is as slow as excanvas in IE (but much faster in other browsers), it's probably IE's fault, not excanvases.
Another JS bug in older versions of IE (6 for sure, not sure about later ones) occurs when you end an array or hash with a comma after the last element, e.g. {foo: bar,}
Your comment makes me incredibly sad because not using HTML will have many hidden disadvantages to your end-users, and ruining many user agents' functionalities, not the least of which would be machine translation and accessibility/addictive devices.
Canvas rendering is not 100% consistent across canvas implementations.
So you would be losing the ability to have the browser do layout for you, losing the ability to scroll sanely, etc, and gaining perhaps some improvement in consistency, maybe. And maybe not.
Yes and I wouldn't recommend it if you have visitors with old computers and your HTML isn't rather simple (depth and multiple class names for an element). It will make older computers (+5 years... or even less, depends on the hardware) simply block for almost a minute (or more) when trying to run that JS.
It's trivial to use and much faster than IE7.js since it relies on the browser engine to do most of the work parsing selectors etc. The author Jason Johnston is very responsive in the forums as well. Even better, the upcoming version 0.11 of Compass (http://beta.compass-style.org) includes a mixin for PIE which makes adding cross-browser rounded corners a matter of two lines.
Didn't think I'd see this happen in my lifetime...