CSS has a noble goal: separating content from presentation. The sad truth, though, is that the implementation of that goal is unbelievably hideous. We���ve spent so much time over the last decade first evangelizing the goal and then excoriating browser vendors for not correctly implementing the specs, that we���ve neglected to notice some fairly fundamental flaws in the language itself.