This is just a general statement. I’ve had to do a lot of HTML/CSS/Javascript work over the last 5 months. My takeaway. This stuff is still a mess. Every decent programmer I know follows in agreement. Everybody puts up with it because there is nothing that you can do about it.
It’s interesting to watch all the different camps out there as well. There are all these different, vocal minorities:
- CSS freaks
- the ’em’ or the ‘damn you if you position with pixels’ crowds
- usability (can you say Jakob Nielsen – nice photo)
- accessability
- anti-table freaks
- it must be XHTML 1.0 compliant
- it must work on Netscape 4.0!
- it must work on my 30″ dell as well as a 2″ Nokia!
- A List Apart approved
- You should using BBEdit or Textmate on a mac, otherwise you don’t ‘get it’
You get the picture. Funny thing about these groups. They are full of contradictions. Google and Yahoo break most of the rules. I mean the GOOGLE homepage uses TABLES!! I wonder. If they stopped using Google, would anyone notice?
The real steam behind the web is Photoshop or Fireworks. What do I mean? Just look at every site that looks good. They all use ant-aliased graphics and rendered NON-WEB fonts.
Yes, things have improved. CSS has made things better. However, the basic breakage and contradiction is still there. Take CSS for example. If the XML like languages are so good, why isn’t CSS in XML? 🙂
My biggest problem has been with the layout system inside HTML. I mean there have been so many times when I get surprised at what I see on the screen versus what I had in my mind. “What is that doing over there??” When you dig in, you just find a mess of inconsistency. Is it any wonder that people still use tables for a lot of things? How about inline vs. block – why doesn’t height get respected for inline? What about floats – whose idea was that?
… and then there is the whole ‘silent failure’ aspect. You receive no warning about a div that doesn’t have a width, that is floated. Things just break and you have to do the binary search on your document to figure out what went wrong. No fun.
If you want to look at a better system, check out XUL. They have eliminated a lot of the warts with HTML. Layout is simpler and easier to understand.
I will also say this. Without Javascript, this medium would have died a long time ago.
So, when HTML sucks.. it is good to have good tools. Hence, the earlier post about Firefox. Without it, this would all be way way too hard.