|
|
|
|
|
by 9rx
18 days ago
|
|
It is a hard problem. That is why in the pre-browser days a small number of entities did the hard work and gave the rest of us mere mortals tidy APIs to make use of their efforts without everyone having to painstakingly duplicate what they created each and every time. But then CSS came along and threw out the baby with the bathwater, returning us back to the bare primitives, forcing entities to redo all that work again. Except this time CSS didn't offer a good mechanism to wrap up that hard work in a nice API bow, so everyone ended up getting pushed into having to redo that same hard work every time they started a new project, leading to a bunch of poor, inconsistent, and often downright wacky implementations. To be fair, the problem isn't CSS per se, it is just that it is much too low-level for all but the small number of entities focused on the aforementioned hard problems and browsers failed to offer anything higher-level for the rest of us. Javascript has tried taking on a stand-in role for the lack of the higher-level abstraction being natively offered by the browser, but that comes with its own limitations so it isn't always a viable choice, not to mention that having to resort to using a full programming environment completely defeats the purpose of having CSS. CSS gets all the hate because it is more often than not the wrong tool for the job but the only tool available at hand. |
|