Wednesday, March 11, 2009

Some observations on css and some Kudos to browsers

Well, today I put the finishing touches on my first front-end project. Despite only being two pages, the project was an absolutely phenomenal learning experience and took me from being absolutely inexperienced at ASP.NET, CSS, and Javascript to a comfortably novice status. Ask me to add a page with a couple of controls and some basic javascript behavior and by golly I could probably do it!

Early on the project prompted some amazement and disgust (which resulted in A Rant on the State of Web Development (Part 1)) and rather than hope to tackle Part 2 with my still very limited understanding of web technologies I decided instead talk a little bit about css and how amazing browsers are just by the fact they can handle it.

Css is not trivial nor simple and I imagine most browser css implementations are insanely compex. As a web developer I can put a style block and redefine a css class at basically any point in the page and it'll magically go through and affect the appropriate collection of elements. The fact that you can put a background-image style on pretty much anything and the browser has to try to render an image for it in the given amount of space is almost unbelievable (and no wonder that the implementations differ between browsers.) The fact that the font size declarations can be relative to the previous declarations seems a little silly and useless, but in some ways is still a little interesting and I'm sure there's some perfect application. And the fact they added in an 'Aural' (audio) aspect not only surprises me, but it actually makes me chuckle as it seems completely out of place for mainly visual language.

I suppose that's all the time I have to ramble about this subject... but I'd love to hear the opinions of the guys who develop(ed) our modern browsers on how ridiculous some aspects of css are. Css already hopes to accomplish a very difficult task- the fact that there's extras like 'aural' components just seems like someone didn't know how to say no to feature creep...