The importance of web standards (and why you should not design for browsers)

For the last three months I have been working with one of Sweden’s largest companies. When I arrived the first day I noticed that it was not possible to log in to the intranet using Firefox. The explanation I received:

“our sites are built for Internet Explorer, you have to use it”

In my head a warning bell rang. I fired up Internet Explorer to find that the whole site was a horrible mix of broken HTML, badly written Javascript, lot of frames and almost no use of CSS. It surly could not work in anything else other than Internet Explorer 6 and 7.

My job was not the development of the intranet (which I am glad for), so I just told the customer what I thought and that they should do a better job of following web standards so the users could use the browser of their choice. The kind of stupid response I got was something in style with:

“we concentrate on Microsoft technologies, so the only requirement we have is that it should work in Internet Explorer”

The fun started during my last week at the company, when Microsoft started to push out Internet Explorer 8 to all Windows Update users. IE8 is actually very strict (relatively to earlier versions of IE!) when it comes to following web standards. Lo and behold, none of the users who had their systems upgraded could use the intranet. IE8, now strict on standards, vomited back the bad intranet and the company basically came to standstill. Chaos!

I observed the chaos (smiling) for an hour before I decided to save the day by telling them how to work their way around it. By default, IE8 uses the new IE8 rendering engine. The big difference from before is that if a site is broken IE8 will NOT default to an older rendering engine. This is different from how older IE browsers behaved and is clearly a step in the right direction for Microsoft to support web standards. However they have not scraped backwards compatibility entirely. In order to allow for broken sites to be viewed in IE8, it is possible for the developer to add the following meta-tag to the page:

  1. <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />

This tag will tell IE8 to use the IE7 rendering engine.

After the incident was resolved we had a long discussing about web standards, and the company now understands that you can not design a site for a certain browser, it should be designed to follow accepted web standards.



And if you are still stubborn enough to believe that building websites for browsers is acceptable, there are reasons why we need web standards:

  1. 1. Accessibility is the law: FCC regulations in the United States require that web sites are accessible to people with disabilities. If a website cannot be viewed by someone with an impairment, it is not only illegal but highly unfair to visitors. With proper web standards, these visitors can change font and modify a website layout to make it easier to read.
  2. 2. Better search engine rankings: While people may be gung ho for “SEO” and those techniques, some of the most basic and most important ways of reading a website can improve the reading by a search engine spider. Combined with semantic markup, the separation of content and presentation generally improves search engine rankings.
  3. 3. Easier development and maintenance: Using semantic and structured HTML makes it easier and quicker to understand code created by somebody else. Since every programmer leaves a footprint in their style of code, those that write web standards will make it easy for others to understand code. It will also help avoid the hackneyed job that many sites exist in today.
  4. 4. CSS = Faster downloading and rendering of pages: Using CSS for presentation style leads to leaner HTML documents. It also makes it easier to globally change attributes. Leaner files means quicker downloads for visitors.
  5. 5. Semantic HTML is friendly to adaptation: Semantically marked up documents can beadapted to print and alternative browsing devices (PDAs, iPhones, netbooks) by linking to a different CSS file.

6 comments on “The importance of web standards (and why you should not design for browsers)

  1. haha! people can be such morons. To say that a company will only build websites for IE6 (and the worst browser of all), is so self centered.

    Honestly, these kind of companies don’t even deserve to have websites if they refuse to understand web standards. Why should developers and designers be made to suffer if these companies do not understand global online communication?

  2. What can i say. The concept of desinging a website isnt just looking at the pictures. There is alot to think about in the process. CSS, Userbility, Ajax, And optimisation towards search engines.

  3. You could also have the customer view the website in Internet Explorer 8′s Compatibility Mode, which is activated by clicking the icon to the right of the address bar that looks like a broken piece of paper. This renders sites in IE 7 mode.

    – Jake

    MSFT Internet Explorer Outreach Team

  4. Pingback: Importance of Web Standards: Don’t Design for Browsers!

  5. Ravi Pradhan

    Hi Peter:

    You know if any standard exists for software stress testing?

    Thanks

    Regards

    Ravi

  6. Peter Post author

    Ravi: Are you referring to stress testing of web application or applications in general? There are quite a few frameworks for stress testing web applications, but no standards for it exist, as far as I know.

Submit comment

Allowed HTML tags: <a href="http://google.com">google</a> <strong>bold</strong> <em>emphasized</em> <code>code</code> <blockquote>
quote
</blockquote>