design, technology

Running IE 6 and IE 7

Anyone who does web design learns quickly that Microsoft Internet Explorer is a pain in the butt. Why Microsoft has decided to create its own bizarre standards is a question that only Microsoft can answer, but it’s the web designers who have to deal with it. With the emergence of IE 7 a Microsoft created yet another fun problem to deal with. IE 7 is far far better at following the standards set for web browsers, but that doesn’t help for IE 6. But that isn’t the problem, the problem is that IE 7 copies over IE 6. It is very difficult to get the two running side by side without help, which is annoying since web designers need to test sites is both browsers. Microsoft’s solution to this problem was to release versions of Virtual PC that only run IE 6 and expire after a few months. Meaning that designers need to download a +500mb file every few months and dedicate a huge chunk of hard drive and system resources just to test IE 6.

But there is a better way and Tredsoft has found it. They have released an installer that lets you have multiple versions of Internet Explorer on your PC, they call it Multiple IE installer. While the name doesn’t leave much to the imagination the app does exactly what you’d want. It can install IE 5, IE 5.5, IE 6, or any combination thereof.

Standard
design, tips

Using <object> in Internet Explorer

As a web designer I hate Internet Explorer. Microsoft often makes their own rules despite there being rules in place already. I will say however that IE is getting better at following standards with each new version of its browser. The Big Problem™ is that sometimes IE interferes with a page remaining valid XHTML. There is a workaround for almost all of IE quirks, but it is often a long treacherous road to get there, and sometimes the fix is worse than the problem.

One way IE makes life hard is when a person needs to embed a webpage inside a webpage. Admittedly this should almost never happen because it is usually a bad idea. However, sometimes it is a good idea. The only time I’ve found it useful is in my web chess program. It is a good use because I require two separate elements to refresh at different intervals. Also, by limiting what refreshes it cuts down on page load and makes it so the main page never has the refresh blink (that second of white before things load in the browser).

Until now I’ve been using the <iframe> element to embed those pages because it seemed to be the only cross-browser solution. Today I discovered that someone took the long treacherous road and found a way to use the <object> element. The key is the classid:

classid="clsid:25336920-03F9-11CF-8FD0-00AA00686F13"

To learn more about using the element and making it work in IE read Brad Wrights discussion of the technique.

update: using the classid above breaks objects in FireFox 3 beta 5

Standard