Seven things still missing from CSS

by Tom Kenny (@tkenny)

Molly Holzschlag finds out what the main frustrations are with CSS. I learnt CSS from the video tutorials from Molly Holzschlag and Andy Clarke, so she knows a thing or two.

It might just seem to be an annoyance that the “bang” itself represents NOT to many programmers, who first look at !important and think “not important” rather than “really, really, really important” which is what !important actually means, at least in CSS. Not so much a small annoyance when you’re trying to educate a programmer who has held the idea that “!” = “not” in their head for 20 years.

I get where this is coming from here but CSS isn’t a programming language. It isn’t hard to mentally switch between the two.

I blame the entire issue on naming. Relative? TO WHAT? Not many of us were clear that meant “an element remaining in the normal flow positioned in relation to a positioned ancestor or the document’s root element.”

Again, this is just something you learn and once you learn it, you don’t think about it anymore. You just know how it works.

Fine control remains elusive – kerning, character spacing – controlling these aspects are both difficult to specify for numerous reasons. This is frustrating to designers who love typography and want to have that finer control.

I can get behind this. I’m surprised there hasn’t been finer typographical control in CSS.

Just as we can’t choose our ancestors in real life, we can’t select elements from a descendent and travel up the tree in HTML.

If you haven’t ever wanted this feature, you’re either very new to CSS or you don’t write CSS at all. Apparently it is technically difficult to implement.


Improve your design knowledge in just a minute or two a day, for free


You'll get a free email every Monday to Friday with actionable design details that will increase the effectiveness of your designs. Each one only takes about a minute or two to read.

Free. No spam. Unsubscribe anytime.

by Tom Kenny

I’m a freelance web designer and front-end developer with 9 years of experience designing for the web. Follow me on Twitter here.