Monday, November 27, 2006

The Cross Browser Hell, Don't Give Up!

Creating a website in pure CSS can be a very demanding task. If you have ever tried, chances are it drove you crazy. Assuming you have tried to create a high quality web presentation tier of course. It's not that the CSS specification is so extremely hard to learn, at least it's not rocket science. The problem with CSS though, is to what extent the web browser adheres to the specification. There are some very good tutorials and guides out there to assist you in learning CSS, but most of them are lacking complete cross browser reference.


You have been reading and learning the CSS specification and got it all figured out, at least you think so. Anyhow you start out creating your first pure CSS web page, probably testing it out in Internet Explorer along the way. And all of the sudden strange things are happening, margins are getting doubled when applied to floats, some CSS properties does not work at all, the box model is totally wrong etc. This is the sad truth of the most used browser in the world, Internet Explorer. A web developers life would be a releif without it, i'm pretty sure most of you developers would agree. As a web developer, there is no way to escape building pages for this browser. At least not if you don't want to miss out on 85% of the people surfing the web. This is internets explorers global user share according to OneStat.com . So unless you are selling "I love Firefox" t-shirts you are not getting away from I.E.

However if you are going to be successful and complete your project, you cant let this bring you down. It will probably be very frustrating from time to time but there are web sites out there to help you. Positioniseverything.net is one of the sites out there with material on cross browser issues. Places like it, will assist you through this hell.


This fact will make you feel very counterproductive at first and because of I.E, in fact you are. But try to view the CSS learning curve as longer instead of feeling like a lousy developer. The learning curve dramatically increases because of the differences across browsers, and it is usually hard to know what information to search for. In general people have the idea of that it is easy to create a web page/site but with specification violations and demands for cross browser compliance to your web app, it rarely is. Upon that you can add accessibility, usability, fast loaded, nice looking GUI etc. Then it is not so easy any more. I have come to realize that the presentation layer area is huge and extremely imnportant. I have never realised that before. It can be a quite a complex area.


I believe there is no point in trying to convert people from I.E users to Firefoxes. I.E will probably always be around and hopefulle it will be standards compliant one day.

/Daniel

No comments: