I Used to Think CSS Was Good

I still do, for the most part.

I learned CSS for the first time back when Dreamweaver created horrible messes of HTML and everyone used the font tag everywhere. It was awesome. Now I could write semantic HTML and then define styles for it separately. Is this an example text? Add the class="example" attribute and then decide how it should be styled. If I want to change it I change one rule and all content belonging to the example class will immediately follow the same rules.

In the last few years I've noticed how this has changed in three ways which I think are detrimental to the whole idea.

Firstly, people have become obsessed with styling rather than content. Yes, people still think content is important. Don't worry about that. But most no longer care about what their content is; only how it looks. What I mean by this is that semantic meaning has disappeared again and given way for things like this:

<div class="left-vertical green one-column no-spacing link-underline">

And that's just going back to font and style tags all over again. Wasn't this what CSS was supposed to solve for us?

Second on my list of things that make me sad about CSS is SASS. We now make stylesheets so complicated that we need to write them with a framework that transpiles it down to CSS before shipping? The purpose of stylesheets is to apply consistent styling across semantically distinct content.

What in the world of Jeebus Crabst Our Bored Saviour are you doing with your website if you need this??

And this leads to number three.

JavaScript is bad! CSS is good! Do it with CSS instead!

- every web designer I've talked to in the past five years.

No. JavaScript is not bad. It has it's purpose, which for example includes handling dynamic content and user interaction. Is that what stylesheets are for? No!

Yet CSS has a feature creep and ever-growing scope that is staggering. You can make animations with CSS. You can handle user interactions and dynamic content.

What exactly is going on in the world of web design? Are we really yearning for yet another programming language for browser implementers to have to support? Isn't JavaScript and wasm enough?

-- CC0 Björn Wärmedal