Add Comment

You are not currently logged in. If you do not have a user account then please consider creating one and logging in before you post your comment. This will allow you to track replies to your comment, and take part in the site much more freely.

To add your comment, fill in all the boxes below and then preview it to make sure you're happy with the way that it looks.

This is the comment you were replying to, attached to the weblog CSS sucks


Re: CSS sucks
Posted by simonw (84.45.xx.xx) on Fri 27 Apr 2007 at 22:50
First an most important IE6 sucks, but a lot of people still use it.

There is no good having a standard if the largest minority of clients don't support it well. There aren't even good tools to automatically downgrade, because the task is too hideous. and it doesn't even degrade gracefully (which HTML was suppose to), it is more likely just to not render stuff, or put it somewhere it can't be read.

A good example being "Outline" which isn't supported at all in IE6 (for Windows), but I believe was supported in IE5 for MacOS, and is supported in all modern browsers (even if Firefox's version is flawed).

Next the CSS box model sucks. The basics are just about bearable, but then you discover that under some circumstances top margin collapse, and if you want a child div to position itself nicely, you have to fiddle with the parent div. It reminds me of the Java Gridbag layout manager (that Java programmers complained about bitterly - and unjustifiably in my view) but without the simplicity. Humans are not good at remembering and handling a zillion caveats and exceptions, so don't build a tool for them to use that requires they remember such, fancy special case handling shouldn't cut in automatically, but should need to be invoked with fancy special requests. Even the authors of the Acid2 test got margin collapsing wrong!

There are simple tasks that CSS should solve in simple fashions that it just doesn't hack. Vertical alignment issues are a common case, a quick search for a particular issue I had turned up a solution with three divs, that only works in non-IE browsers, this breaks the separation of content and style, and couldn't be adapted to my needs. I solved it with a single celled table.

Sure some of this is frustration at (ancient) browsers. Some of it is no doubt my own lack of knowledge, some perhaps poor choice of tools. But simply laying out boxes on a page shouldn't be more complicated and time consuming than say programming the logic of a business application.

Username:Anonymous
Title:
Your Comment:

Posting Format:

 

Inappropriate comments will be removed.

Some help on entry formatting is available

User Login

Username:

Password:

[ Advanced Login ]

Register Account

Quick Site Search