Guerilla Web Design and IE7
I know that I'm just speaking for myself, but there's been a lot of whirring about the upcoming release of Internet Explorer 7, and as of yet, I'm not impressed or worried. The latest buzz is about Internet Explorer not moving forward to support CSS2, and at this early stage in the game, no one can really say what will really be supported. I'm going to take their reports at their word, and for the purposes of this article assume that IE7 will focus solely on security and not feature enhancements.
If IE would like to continue to be a part of today's web, they need to a little better than security fixes. So you don't take me the wrong way, I'm not interested in exterminating IE, I'm interested in promoting modern web standards. It just so happens that IE is threatening not to support modern web standards, and so that browser will be the whipping boy for the bulk of this article.
I think back to the days when the IE vs. Netscape browser wars happened. Netscape didn't die because it was a terrible piece of software, it died because it lacked solid support for the techniques employed by web developers. For example, Netscape 4.7 would render a page with [some] proper CSS, however if the user changed the window size, the CSS and a lot of the page's formatting would vanish. This bug caused many developers to write javascripts that would force Netscape to reload the page if the window were resized and the end result was that designers made the Netscape experience less friendly. It runs deeper than that, however. IE offered features to designers that web developers began to adopt. The internet was rapidly being designed around IE. It wasn't long before a Netscape user would browse the web only to find more and more pages that didn't render properly or became unreadable, and so Netscape users went off to find a browser that worked with more web pages. In those days, that other browser was IE.
All the while, mind you, there was a growing rumble from the W3C: they were making recommendations for html, xhtml, CSS, the DOM and more. Many developers adopted these recommendations and heralded them as standards. The goal was specifically to prevent Microsoft, Netscape, or any other browser manufacturer from rewriting html into its own proprietary language. The idea took hold, and today the W3C is a decentralized authority in the way much of the internet actually works. The W3C exists to ensure that the web remains an open network where anyone can publish portable data in markup formats like html and xhtml, and it's working quite well.
Standards continue to grow in popularity, and just as the desire to design, create, and progress killed Netscape, it is killing IE. It's not the browser, it is the designers who choose to stop bending over backwards to accommodate old browsers and their quirky ways. Now is the time for designers to rise to that call again, and we must stop pandering to the quirky ways of old browsers. If IE wants to stick around, they're going to have to listen to us, not the other way around.
As a web developer, I've taken to the standards movement. I use CSS2, and even some CSS3 today, and the browsers that cannot understand those languages lose out. In my continual javascript education, I've chosen to use the W3C DOM and not proprietary DOMs like the ones used often by IE. What that means, in short, is that sites I develop don't work as well in IE as they do for modern browsers like Firefox or Safari. Take for example the external links on this site. They do not work in IE or other obsolete browsers. I've designed themes for popular bulletin boards that do not work 100% correctly with IE. Don't get me wrong, they're usable, but they look a lot better on modern browsers. I've employed contemporary CSS selectors that IE doesn't recognize (and ignores) to achieve effects that only users of modern browsers are able to see. And I will continue to do so. Unladenswallow.com, which is just a splash page, doesn't render properly in IE because I've chosen to use some elements of the CSS 1 specification that it doesn't support.
I'm not even remotely worried about compatibility with IE's obsolete standard support, and I'm not the only who works this way.
I think of it as guerilla web development. The guerilla web developer's tenet is that we hold web standards above browser hacks and proprietary mark-up. We're not going to stop designing, and we're not going to stop using the tools available to me by modern browsers just because there's a lumbering dinosaur being employed by 80%+ of web users. To the contrary, we plan to advance web development and use more modern tools as they are made available. We're going to help turn that 80% into 70% and so on. There are scores of us using new techniques on web sites. And each day another site appears that doesn't work as well in IE as it does in modern browsers. There are more guerilla developers today than there were yesterday and there will be even more tomorrow. Viva la revolution!
- under:
- Web Development
- Posted on
- 2005-03-22
Comments:
Do we make the users suffer?
http://www.boxofchocolates.ca/archives/2005/04/03/browser-elitism
That depends upon your perspective. Who is making who suffer, exactly? Am I, as a designer working to commonly accepted standards, excluding anyone or making them suffer?
There is only one reason why anyone would even consider coding to MSIE instead of to standards and accessibility: IE's overwhelming market share. And That's what this is really about, isn't it? Since Microsoft has convinced over 80% of internet users to use MSIE, that should somehow mean that we should abandon accessibility, web standards, and data integrity? We should roll over and just start accepting that Microsoft is the one in charge of the xhtml spec?
Each designer is going to compromise at a different level between W3C and Microsoft. I think it boils down to how much you want to compromise. How much inefficient and redundant code do you want to write to accommodate IE users? How much do you wish sacrifice data portability?
This man's example boiled down to Microsoft not supporting the :hover pseudo class on anything but anchor tags. Think for a moment about that. Think about how much needless javascript has been written and is employed just to overcome this one short-coming of older browsers like IE6. Now imagine for a moment if IE7 doesn't expand :hover support. Why should they? There's no need because there are literally millions of lines of Javascript around the web to compensate for it. How about transparency? png support? Rounded corner css properties? We all use a lot of hacks to make these rudimentary design elements work in IE6. Wouldn't it be nice if we could take the hacks out of our code.
Anyway, I'm rambling. I submit that designers using web standards aren't causing suffering, designers are preventing suffering by adopting open standards.
This article is closed to further commentary. But you can always contact me directly.