Yes, it is horrible. It's got a little bit better (think flexbox and CSS grid) but it still feels clumsy, unintuitive, unpredictable, inelegant, frustrating. You learn to live with all it's painful shortcomings, but you'll never learn to like or love it.
Interesting aside: what would the creators of CSS do differently today?
Bert Bos:
- Feels there was too little detail in the first CSS spec (but Håkon Wium Lie thinks there wasn't enough)
- Wishes there were more ways to display link behaviour e.g. expanding/collapsing text
- He wanted to create CSS syntax that was readable for people who were not programmers
- He preferred a full stop (period) to mark the end of a group of statements. Curly brackets (braces) to group statements was Tim Berner-Lee's idea.
- Grids should have been a fundamental part of the CSS spec from the beginning
- Prefers the idea of CSS for documents and a separate language for UI elements
- Thinks the cascade could have been made easier
Håkon Wium Lie:
- Feels there was too much detail in the first spec: the more you added to the spec, the harder it became to implement
- Thinks that margin collapsing was too complicated for v1 and could have been dropped
- Also thinks first-letter and first-sentence pseudo-elements should have been left out of v1
- Hypercard was based on the idea of cards rather than documents - he wished a CSS card element had been defined
- He didn't want border radius originally, but designers insisted and he now likes it
- The v1 spec was written without any test documents - he considers that a major mistake
- They both approached CSS in a document frame of mind and wonders if they should have considered the idea of web apps more
Source: https://www.youtube.com/watch?v=PQTpsxf7rQQ