DEV Community

Cover image for Is Learning CSS a Waste of Time in 2026?

Is Learning CSS a Waste of Time in 2026?

Sylwia Laskowska on January 29, 2026

With modern frameworks, component libraries, and utility-first CSS, it’s a fair question. Most frontend developers today rarely write “real” CSS. ...
Collapse
 
pascal_cescato_692b7a8a20 profile image
Pascal CESCATO

When you say “CSS might actually be the hardest part of frontend development. More complicated than JavaScript.” — I’m 100% with you. That’s exactly why I stick to backend as much as possible. I’m a perpetual perfectionist, so ready-made libraries don’t appeal to me, and writing everything from scratch in CSS is just a nightmare. Give me pasta — at least I know how to make that and feed a whole table! 😉

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

I totally get that 😄 I actually enjoy backend work too - but I always end up missing the visual part at the end.

If I ship just an API, there’s this little voice in my head going: “And… that’s it? Is this really the final result?” 😅

It’s been like that for me ever since I started programming. I need to see something at the end - even if it’s messy CSS and slightly broken layouts 😉

Collapse
 
pascal_cescato_692b7a8a20 profile image
Pascal CESCATO

It’s not that I don’t want a visual result on my projects — sometimes I’m perfectly happy with a simple text visualization in a CLI — but the reality is I just prefer when someone else handles the front while I focus on the back. To each their own pleasure and specialty, and CSS is very, very far from mine 😉

That said, to come back to your original question: no, learning CSS is definitely not useless — far from it. I think things like WCAG standards make that pretty clear. It’s just that, for both of us maybe, it’s not really our core craft.

Thread Thread
 
sylwia-lask profile image
Sylwia Laskowska

Who knows, maybe one day we’ll do a frontend–backend collab 😄
Just need to dig myself out of the thousand things I took on “because they were fun” first 😅

Thread Thread
 
pascal_cescato_692b7a8a20 profile image
Pascal CESCATO

Hey, just say the word and you’re officially hired on the frontend side 😄 The door’s open anytime!

Collapse
 
playserv profile image
Alan Voren (PlayServ)

When layouts break, accessibility issues pop up, or design systems drift, someone has to understand what the browser is actually doing.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Indeed 😄 At some point someone has to look past the abstractions and talk directly to the browser. That’s where the real debugging begins.

Collapse
 
codemonster240 profile image
Andrew Burch

im a frontend developer and i get nightmares about mobile compatability

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Totally get that 😄 And the second nightmare is when someone zooms to 200% and the layout suddenly has a mind of its own 😅

Collapse
 
armando_ota profile image
Armando Ota

Kudos for the article. People are loosing the basics and fundamental knowledge these days. Even designers are not ready for the accessibility and don't even know what it means.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Thank you! And that’s a really good point about designers too. I sometimes wonder how often accessibility is considered at the design stage at all - or if it only shows up later as a “dev problem” to fix.

It works best when accessibility is part of the thinking from the very beginning 🙂

Collapse
 
richardpascoe profile image
Richard Pascoe

I’m still pretty new to web development, so this was reassuring to read. It’s helpful to see why CSS fundamentals still matter, even with all the tools and abstractions available now. Posts like this make me feel better about spending time learning the basics properly - thanks for sharing this perspective!

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Absolutely - learning the basics is never wasted time. It pays off in ways that aren’t always obvious at first, but become incredibly valuable later on.

Good luck with your learning journey, and enjoy it! 😊

Collapse
 
richardpascoe profile image
Richard Pascoe • Edited

Thank you, Sylwia - really do appreciate it - back to CSS Garden and the rest!

Collapse
 
aloisseckar profile image
Alois Sečkár

Seriously. Is someone even asking such question? And I don't mean "I skip broadening my CSS knowledge, because framework suffice and there's no time right now" but "I skip CSS, because it is waste of time" - as the title suggests.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Fair question 🙂 But what do you think is the practical difference between those two statements - other than one being phrased more politely? In both cases CSS gets deprioritized or skipped, just with a different justification. That tension was exactly what I wanted to poke at with the title.

Collapse
 
itsugo profile image
Aryan Choudhary

Honestly, I think Sylwia nails it. Learning CSS fundamentals is like having a superpower in debugging, especially when those frameworks and utils can only take you so far. It's the low-level magic that helps you reason about layout and flow. I've found the same fundamentals helpful in my own projects!

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

I really like that - calling it a superpower is perfect 😄
Fundamentals don’t always feel flashy, but they save you when things get weird. Thanks!

Collapse
 
ingosteinke profile image
Ingo Steinke, web developer

Learning anything is never a waste of time, especially not learning fundamental web technologies like CSS and HTML. I still fail to see how AI will replace developers, create functional responsive and accesible website themes from static desktop designs in Figma and fix obscure issues in existing legacy code. And relying on ready-made design systems like Tailwind or Bootstrap makes us miss out on CSS' new features like container queries, details, popover, masonry layout, and improved animation possibilities.

CSS didn't get worse, but like JS, it's already built upon an inconsistent historical foundation, and unlike in backend languages, we need and want backward compatibility. So, adding more and more new features won't make CSS any more consistent. Still, it's worth learning, and for many developers, CSS will be the first descriptive programming language and that's an important milestone learning development.

And it's not just for developers. I think, web designers benefit from learning CSS as well, getting a better understanding and improve collaboration with web developers.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Thanks a lot for this thoughtful comment. I totally agree with you.

What I really meant in the article is that it’s no longer just about “learning the basics for completeness.” CSS knowledge is becoming genuinely important again, especially now that accessibility is being taken seriously. In many places that push comes mainly from legal requirements, sure, but honestly, better that than being ignored.

Your point about designers is also spot on and really resonates with me. It actually came up earlier in the comments too (@armando_ota mentioned it as well). I’m genuinely curious how often accessibility is considered in design today, and how early it enters the process. It makes such a difference when it’s there from the start.

Collapse
 
redocsh profile image
redoc

AI wont be able to replace many language, but css is the first language AI replaced. No one is writing plain css for frontend from scratch, everyone asks ai to design like they want and then making changes(by reprompting or using their bite knowledge of css)

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

I get what you mean 🙂 A lot of people do start with AI-generated CSS now.

But then I often take that CSS to the workshop, tweak things, fix details, adjust spacing, states, accessibility… and suddenly clients and users go “wow, this looks great!” 😄

That last mile still tends to be very human.

Collapse
 
moopet profile image
Ben Sinclair

You're right. Utility-first and component-based thinking is killing CSS and accessibility.

And because the world is riddled with things like Tailwind, people really need to know the basics so they can see when LLMs spit out junk.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

I’d say abstractions and utilities are great tools - but they definitely don’t replace understanding the fundamentals.
When you know the basics, you can tell when something isn’t quite right - no matter whether it comes from a framework, a library, or a generator 🙂

Collapse
 
voroninp profile image
Pavel Voronin

Is CSS: The Definitive Guide by Meyer still the most comprehensive book on the subject, or would you recommend anything better?

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Honestly, I’m not the best person to answer that - I don’t have deep experience with CSS books from back in the day. I’ve heard that CSS: The Definitive Guide by Meyer is a classic and very thorough, but a lot of people today learn from modern online resources, tutorials, and MDN instead.

Collapse
 
voroninp profile image
Pavel Voronin

I just hope to find a book which tells about deeper reasons and philosophy rather than just CSS properties ;-)

Thread Thread
 
richardpascoe profile image
Richard Pascoe

If you have a good understanding of general web development, CSS in Depth by Keith J. Grant is considered to be a good guide and the second edition was published in 2024.

Thread Thread
 
voroninp profile image
Pavel Voronin

Reading it ;-)

Thread Thread
 
richardpascoe profile image
Richard Pascoe

Nice!

Thread Thread
 
sylwia-lask profile image
Sylwia Laskowska

Thanks Richard for covering for me 🙂

Thread Thread
 
richardpascoe profile image
Richard Pascoe

You're more than welcome, Sylwia - though it was hardly a "cover", you are one of the best writers on DEV!

Thread Thread
 
sylwia-lask profile image
Sylwia Laskowska

Awww you're too kind! 💖

Collapse
 
marina_eremina profile image
Marina Eremina

Another reason to keep learning CSS in 2026: one may actually need it in interviews if you plan to change jobs. I’ve recently taken part in a few recruitment processes that included testing assignments, and the CSS questions were surprisingly deep, everything from accessibility basics (like hiding elements from screen readers) to writing complex selectors (like selecting every odd div that’s a sibling of a div with class classOne, but not a descendant of a div with class classTwo). You were expected to remember all of this, with no external resources allowed. Kind of wild, right? 🙂

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

I honestly didn’t expect that! 😄 I’ve been through quite a lot of interviews in my career, and I don’t remember being seriously grilled on CSS even once.

But you’re absolutely right about accessibility - over the last few years it’s started being treated very seriously. Largely because of legal requirements, yes - but still, better that than being ignored.

Collapse
 
marina_eremina profile image
Marina Eremina

I have also noticed that a11y is getting more attention lately, and it’s definitely the right thing to do. Previously a11y-related tasks usually got the lowest priority. It’s also cool how most CSS frameworks and component libraries are starting to bake accessibility in by default. Even if it’s mostly because of legal reasons, I still think it’s a really positive change 🙂

Collapse
 
amirhossein_ln profile image
Amir

This resonates a lot.

I don’t think CSS became irrelevant — it became invisible.
Frameworks and utilities didn’t remove the need for CSS, they just postponed the moment we’re forced to truly understand it.

Accessibility is that moment.

What really clicked for me in your post is that a11y breaks the “happy path abstraction”.
Once focus order, outlines, and keyboard navigation enter the picture, you’re no longer styling — you’re reasoning about layout, flow, and the cascade again.

And no utility class can replace that mental model.

Maybe CSS today is less about writing styles and more about debugging reality when abstractions leak.
In that sense, it feels closer to systems knowledge than UI polish.

Great write-up — especially the reminder that fundamentals don’t disappear, they just wait.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Thank you for this — you’ve put it perfectly. Exactly this.

And I completely agree: it’s not just about CSS. This pattern shows up with any abstraction or framework. They work beautifully until the moment they don’t — and that’s when the underlying fundamentals suddenly matter again.

Accessibility just has a very efficient way of exposing those cracks.

Collapse
 
amandamayfield profile image
Amanda Mayfield

omg girl I still looove writing CSS. I was late to the tailwind game and though I do appreciate it, I still like the control CSS gives me. Also, honestly, not a big fan of LLM generated styles and how they've looked for me. Maybe I'm not giving them the best prompts.

But yea, I recently learned about the clamp() and it makes typography so fluid and its awesome. Also, there's the new anchor positioning that's out and it makes things like tool tips much easier! (Remember how much a nightmare those were, oof).

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Haha yesss - that’s a perfect comparison 😄 LLM-generated styles are a bit like LLM-generated images: at best they’re “good enough,” but you can usually tell they weren’t crafted with full control and intent.

And +1 for clamp() - such a great addition for fluid typography. Anchor positioning for tooltips too - if someone told me years ago we’d get that natively in CSS, I wouldn’t have believed them 😄

Collapse
 
dorothyjb profile image
Dorothy J Aubrey

This hit hard. 😄 I looove frameworks. Back in the day, I'd let them solve the hard stuff -- for me? Give me two lat/lon points and I could get you from A to B via the shortest or fastest route, with a wine stop and no accidental drive-bys of your ex’s house.

But the moment something needed to line up on the screen, I was ready to smash my keyboard.

The accessibility angle is a great reminder that abstractions are amazing, until reality pokes through and you’re back in raw CSS land thinking, “where am I and how the hell did I get here?” (Surely there’s a Wizard of Oz joke in there somewhere? 😄)

Thanks for writing this; I feel seeeen! 😄

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

I love this comment 😄 That’s exactly how I felt while fixing that component - like I’d fallen through a trapdoor straight into raw CSS land with no map.

Even the LLM gave up on me there 😅 And the funny part is - years ago we were building entire layouts in plain CSS without blinking. Muscle memory is real… and apparently reversible 😉

Collapse
 
annavi11arrea1 profile image
Anna Villarreal

I love CSS!!! I enjoy the act of creating with it. Its satisfying af. ✨️

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

I love that attitude 😄 Creating with CSS can be really satisfying when you’re in the flow ✨

Collapse
 
codemonster240 profile image
Andrew Burch

well, the government sure needs to learn css

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Haha, some public websites could definitely use a bit more CSS love 😄 Accessibility and usability would go a long way there.

Collapse
 
it-wibrc profile image
Waffeu Rayn

Yes, i still learn CSS and teach it to universities student. When i have time i'm still using vanilla from HTML to JS and even while working, i always had that sense of doing it. But the main reason is because CSS has traumatized me when i started so when i understood it i couldn't really let it go 😅.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Thanks for the comment - and respect for both learning and teaching CSS 😄 Trauma-driven mastery is still mastery.

I was actually just wondering in a chat with @evanlausier whether CSS is even still being taught at universities these days - so it’s really good to hear that it is. For a moment I was afraid that knowledge might quietly disappear completely 😄

Collapse
 
it-wibrc profile image
Waffeu Rayn

TO be honest i teach them in the training center as i remarked while at school we are not well trained in html, css and js as they were brushed off in less than a month as they were nothing to directly jump into Framework and in parallel JS little by little. You i took the charge to help those student build their foundation by teaching them and doing a lot of practice to prove what they did.

Collapse
 
evanlausier profile image
Evan Lausier

Its important to know what youre good at and what youre not, CSS was not my strong point in university... 😂😂 I passed tho so I will take it and let the masters carry on.

Thread Thread
 
sylwia-lask profile image
Sylwia Laskowska

Haha, @evanlausier judging by your profile, I’m pretty sure you have people for writing CSS now anyway 😄

Collapse
 
evanlausier profile image
Evan Lausier

"The Generational Gap"... 😂😂 its real!!

Id be happy if I never had to see CSS again. I had several projects with it in university and never really saw the point. Like writing in cursive... there are other ways to write.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Haha, that’s a bit like comparing cursive handwriting to typing on a keyboard 😄

And honestly, respect that you even had CSS at university! I’m not sure how often that still happens now. Maybe a current student can confirm or deny that one 😄

Collapse
 
pixel2code profile image
Pixel_To_Code

I don’t think learning CSS is the waste — learning it without intent is.

Tools abstract syntax faster every year, but they don’t abstract:

layout reasoning

constraint trade-offs

accessibility consequences

performance side effects

When something breaks in production, “the tool did it” isn’t a useful mental model. CSS is still the layer where design intent becomes real behavior.

You don’t need to memorise every spec update in 2026.
But understanding how the browser thinks is still leverage — especially when working with AI, design systems, or abstractions built on top of CSS.

The question isn’t “Should I learn CSS?”
It’s “Do I want to depend on tools I can’t reason about?”

Great post — appreciate the nuance you brought to the discussion.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Thanks - this is a great take, and I fully agree with your framing 🙂

We definitely don’t need to memorize every spec detail or new feature. But it is important to understand at least what our tools and AI are actually generating for us. Otherwise we’re shipping code we can’t really reason about.

And you’re right - this isn’t just a CSS thing. It applies to any language or layer. The abstraction can help you move faster, but some mental model of what’s underneath is what lets you debug, optimize, and make good trade-offs when things get real.

I really like your line about design intent becoming real behavior in CSS - that’s a great way to put it. Thanks for adding that nuance to the discussion 🙂

Collapse
 
austinwdigital profile image
Austin Welsh

Absolutely agree with both responses. Great article, thank you for sharing!

Collapse
 
pengeszikra profile image
Peter Vivo

I think CSS knowledge still valuable.
Honest my first move of course to add tailwind even a simple HTML page, because fare easier to use controll a layout than CSS.
But at end of the day CSS knowledge is important to make a good HTML code, minimal as possible.
Maybe we can use CSS to make a simple 3D "engine" which I was maked:

dev.to/pengeszikra/javascript-grea...

card game

push the yellow button on wall to auto play

That level CSS solution is cannot created with Tailwind because the Tailwind don't cover all CSS functionality.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

This is amazing — especially the card game 😄 Really fun demo, nice work.

One small UX thought though: you might consider adding an option to stop or reduce the constantly moving background. It’s pretty intense visually — and even for me (not neurodivergent) it was a bit distracting after a while. A motion toggle would make it more comfortable and more accessible 🙂

Collapse
 
pengeszikra profile image
Peter Vivo • Edited

Absolute valid, have a secret keys: A W S D controll the moving speed of spaceship.

Collapse
 
cyber8080 profile image
Cyber Safety Zone

Great article! 😊 I think the title might be a bit misleading at first glance — CSS isn’t a waste of time in 2026, it’s just that how we use it has changed. Modern frameworks (like Tailwind, Bootstrap, design systems, component libraries) do handle a lot of layout and styling for us, but that doesn’t remove the need to understand CSS fundamentals.

What stood out most is the accessibility angle. Real-world constraints like keyboard focus states, WCAG compliance, and custom interactions still require solid CSS knowledge — not just utility classes or tokens.

Even if you mostly use frameworks in day-to-day projects, understanding CSS deeply helps you debug layout issues, customize components, improve UX, and make sites work for everyone, not just the “happy path”.

So for anyone on the fence: don’t ditch CSS — adapt how you learn it. Use tools that speed you up, but keep the fundamentals strong.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Fully agree 🙂 Frameworks are there for people - they’re meant to make our lives easier, not harder 😄 But yes, the fundamentals still matter a lot.

The tools can speed you up, but understanding what’s underneath is what lets you debug, adapt, and build beyond the happy path. Thanks for the thoughtful comment!

Collapse
 
darthroman profile image
darth-roman

I've read some of the CSSWrapped2025 and StateOfCSS2025 trends, and I was actually surprised that devs still use CSS, I myself use it for everything, it's painful sometimes, but I do prefer writing my own CSS. It gives me more control, am glad I read this, this is an encouragement to learn and study more about CSS, thanks 🙏🏻

Collapse
 
jakemetzdev profile image
Jake Metz

It has gotten quite good in fact. To the point where scss/sass is nearly redundant with the native features (nesting, css variables, etc)

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

True! I actually need to catch up on those trend reports myself 😄

Collapse
 
jakemetzdev profile image
Jake Metz

What’s the gripe with tailwind here? They are just utility classes that implement css. So, to understand tailwind one must understand css.

Also, accessibility is as much about laying down semantic html and ensuring dynamic JS updates adhere to accessibility standards. It’s not all CSS as a solution.

Absolutely agree CSS is difficult but it feels difficult in a different way than the others. It’s much more subjective and doesn’t come backed in with functional programming patterns or design patterns like JavaScript does.

Either way I think knowing the fundamentals of any of these three are important as we march in this AI world that is making our tool knowledge duller by the day

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

That’s a fair point, and I agree that Tailwind is just CSS utilities under the hood - you absolutely need CSS knowledge to really understand what it’s doing.

Where I slightly disagree is that in practice, Tailwind can make it possible to work for quite a long time without ever really engaging with CSS fundamentals - especially when people copy patterns without understanding why they work. That’s not Tailwind’s fault, but it does change how and when people learn CSS.

And totally with you on accessibility not being “just CSS” - semantic HTML and JS behavior are critical. My point was more that CSS often becomes the missing piece when accessibility issues finally surface.

Overall though, we’re aligned: fundamentals matter more than ever, especially in an AI-heavy world 🙂

Collapse
 
jakemetzdev profile image
Jake Metz

Absolutely agree. Even prior to this AI wave it had been preached to understand the fundamentals prior to adopting an abstraction such as a framework (react, scss, tailwind, etc). I think this point can be applied across languages and not just CSS here.

Thread Thread
 
sylwia-lask profile image
Sylwia Laskowska

100% agree - this really applies to all languages, not just CSS 🙂 Fundamentals travel well across tools and trends.

Collapse
 
skotix_webagency profile image
Skotix Web Agency

I feel you, specially with tailwind - in the past we we used to have bootstrap so we still used css when we wanted specific values rather than pre built ones but now all you have to do is put [] and you are good.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

I know what you mean 🙂 It definitely lowers the barrier to just “plug values in and move on.” Super convenient - but it also makes it easier to skip understanding what’s happening underneath.

Collapse
 
mrpercival profile image
Lawrence Cooke

I am always disappointed in how "same" we have become. CSS opened the door to a lot of unique possibilities, but we have become template based (bootstrap, tailwind etc) , standardised layouts (nav goes here, body goes here) and as such have lost all that uniqueness we had.

I have been creating websites since before CSS, and while yes, the designs from the 90s are a little terrifying to look at now, but they were the learning platform to build on once CSS arrived .

And in the early days of CSS, that uniqueness remained, people put their personality into web design.

We have lost all that, the dare to be different isn't here any more. Some of that can be attributed to accessibility, but really, you can make a site accessible and still unique, it's just rare to find websites who dare to still try it/ take the extra time to design something different.

Should we still learn CSS, absolutely, while templates get you a long way now, you still need to be able to do something different if required., and understand the role various CSS functionality is critical to that.

Not to mention, learning new things within tech is never going to go astray, and learning CSS is a very base level thing to learn along with learning HTML.

I work with both templated (bootstrap mainly), but I also like to go outside and experiment still and build something a little less mainstream but still usable .

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Greetings from a fellow “pre-CSS era” web builder 😄 I was also making little websites back when CSS wasn’t even part of the picture yet. And when CSS arrived, it really felt like a game-changer - suddenly we had real control over presentation without hacking everything in markup.

I do agree that many sites look very similar today. And I think a big part of that comes from delivery pressure. Teams are expected to ship fast, stay consistent, and be maintainable, so component libraries and templates become the safe choice.

I once worked with a UX designer who had fantastic, bold ideas and really wanted to do something unique. In the end, though, the project still landed on a component library and built on top of it, just because it was the most practical way to deliver.

So I totally get your point - uniqueness is still possible, it just competes with time, budget, and scale now. And that makes those who still experiment and push beyond templates even more valuable 🙂

Collapse
 
aitrandingprompt profile image
Azhar Mehmood

If CSS were truly “dead,” the web would already look broken — and it doesn’t.**

Short answer: No, learning CSS is NOT a waste of time in 2026. But how you learn it matters.

CSS isn’t about memorizing every property anymore. It’s about understanding layout, responsiveness, and how the web actually looks and feels. AI tools can generate CSS fast — but they still rely on your judgment to fix bugs, improve UX, and make designs usable across devices.

If you:

  • Build websites
  • Work with React / Vue / AI-generated code
  • Care about performance, accessibility, or clean UI

👉 CSS is still a core skill, not optional.

Honest advice:
Don’t chase “CSS mastery.” Learn the 20% that gives 80% results:

  • Flexbox & Grid
  • Responsive design
  • Basic animations
  • Reading & fixing AI-generated CSS

My suggestion:
Use CSS with AI, not instead of understanding it. Developers who can guide AI will win — not those who blindly copy-paste.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

I really like that framing - learning the 20% that gives 80% of the results is a very practical approach 🙂

To that list I’d definitely add focus states and basic accessibility patterns (like :focus-visible, contrast, and keyboard navigation). Those tend to matter a lot in real projects and are easy to overlook until they bite you.

Collapse
 
grantking profile image
Grant King

I design layouts from scratch. It is too much mental strain to wrestle existing layouts into the right shape for each new UI otherwise. I first learned CSS for real in college about 20 years ago before there were many other options. I've thoroughly explored the waves of options over the years. These days I'm completely in love with Tailwind. I use it with Vue. Of course Tailwind is still CSS, just organized to make it very easy to use.

I like knowing CSS basics so that I understand what each Tailwind component class is doing and just to have a better idea of how the overall magic-trick works. Otherwise I just use Tailwind component classes these days. Tailwind is able to meet all my needs and I don't risk making an overcomplicated CSS mess. If I need to I can drop down to my own custom styles, but I never need to.

Tailwind is the lowest level I ever need to go for design and accessibility, and its vastly superior maintainability over custom CSS keeps me sane and never makes me feel traumatized from misbehaving layouts.

So short answer for me is: dark CSS knowledge to enable habitual Tailwind use.

Great article Sylwia! I'm especially glad to hear you describe your focus on accessibility.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Yes - in that framing it makes a lot of sense 🙂 If you’ve got solid CSS fundamentals and build good component-level abstractions on top of Tailwind, that’s a very healthy setup.

The real trouble starts when someone uses Tailwind purely “by eye” without understanding the underlying CSS at all - not because they choose to abstract, but because they don’t know what’s underneath. That’s when things get fragile fast.

Collapse
 
peacebinflow profile image
PEACEBINFLOW

Yeah, this one hit a little too close to home.

I don’t think learning CSS is a waste of time — but I do think it’s become one of those skills you only notice you’re missing when everything breaks. And accessibility is ruthless about exposing that gap.

I’ve felt the same drift you’re describing. CSS slowly moved from “core craft” to “background noise.” Most days it’s tokens, utilities, component props. You’re not designing layouts so much as nudging them. And honestly? That works… until it really, really doesn’t.

The accessibility part is the key insight here. Focus states don’t care about your abstractions. Keyboard navigation doesn’t respect your visual hacks. DOM order will absolutely snitch on every shortcut you took years ago and forgot about. When those things collide, there’s no framework escape hatch — you’re back in raw CSS land, whether you like it or not.

The “CSS is harder than JS” thought made me laugh because… yeah. JS fails loudly. CSS fails politely while ruining your layout in ways that make you question your sanity.

I also like the handmade pasta comparison. Frameworks exist because we don’t have infinite time, and pretending everyone should hand-roll layouts forever is unrealistic. But knowing how pasta is made still matters — especially when the boxed stuff falls apart under pressure.

To me, CSS is becoming less of a daily driver and more of a foundational survival skill. You might not touch it deeply every day, but when you need it, you really need it. And accessibility is usually the moment it comes due.

So no, not a waste of time — just dangerously easy to neglect. And the bill always shows up eventually.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Thanks for this — really thoughtful comment, I enjoyed reading it 🙂 You captured the “fails politely” part of CSS perfectly 😄

And yes, to be clear, I absolutely don’t imagine hand-writing all CSS in every project. We don’t have infinite time, and not everyone has the design sense or system thinking to build clean abstractions from scratch. Frameworks and design systems exist for good reasons.

The point for me is exactly what you said: everything works great… until it doesn’t. Abstractions carry you very far, but when real constraints hit — accessibility, edge-case layouts, legacy DOM structure — they can’t fully shield you. And that’s when fundamentals stop being “nice to have” and become survival skills.

I really like your framing of CSS as a survival skill rather than a daily craft — that’s a great way to put it. And yes, accessibility is usually the moment the bill comes due 🙂

Collapse
 
peacebinflow profile image
PEACEBINFLOW

Really glad it landed that way 🙂

And yeah, I think we’re actually saying the same thing from different angles. I don’t want to romanticize raw CSS either — most of the time, abstractions are doing exactly what they should. If we had to hand-roll everything daily, nothing would ever ship.

What stuck with me after writing that comment is how CSS knowledge ages differently than most frontend skills. You don’t “use it up” — it just quietly atrophies when you’re insulated by systems. Then one day a real constraint shows up (accessibility is usually the culprit), and suddenly you’re negotiating with the browser instead of the framework.

I like your point about not everyone having the design sense or system thinking to build clean abstractions. That’s real. But when the abstraction leaks, you still need someone in the room who understands how focus, flow, and layout actually work at the browser level — otherwise you’re just patching symptoms.

Calling CSS a survival skill feels accurate to me because it’s not about elegance anymore, it’s about resilience. Can the UI survive keyboard navigation? Can it survive zoom, contrast modes, weird DOM order, assistive tech? Those questions don’t show up in happy-path demos, but they define whether a product is actually usable.

Accessibility just has a way of stripping away the comfort layer and asking: “Do you understand what you built?”

So yeah — not daily craft, not nostalgia, just foundational literacy. Easy to neglect, expensive to relearn under pressure.

Really appreciate you sharing this perspective — it’s the kind of post that makes people quietly reconsider their assumptions, which is the best kind.

Collapse
 
payracash profile image
Wraith

Yes we have LLM so learn CSS is waste of time :-)

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Sure - if you’re happy having the same thousandth layout as everyone else 😄

Collapse
 
payracash profile image
Wraith

Whenever I ask an AI to make a layout. I just give it links to example sites and it builds all the CSS scaffolding for me. I then reuse it, no point wasting time on CSS.

Thread Thread
 
sylwia-lask profile image
Sylwia Laskowska

Exactly, if you just need a UI that works and can be a bit derivative, that approach is often good enough 🙂
It gets trickier when you want something truly out of the box or when you have to pass real accessibility checks. That’s usually where quick scaffolding stops being enough 😄

Thread Thread
 
payracash profile image
Wraith

Yeah I agree. For simple, standard websites this works really well, especially since a lot of ready made cod already comes in React anyway. its true that if you dont describe things in detail you often end up with very similar looking pages.

In my case I described exactly what I needed and how the page should look, and I got UI elements that were pretty much perfect for me. So I just used them directly on the site. But when I needed something more custom for me or client request I just kept going like asking for falling snow, or text made of particles that scatter when you hover with the mouse, etc, it could generate that in moments.

Because of that IMO learning CSS in depth doesnt feel as crucial anymore. It probably makes more sense to learn it by asking the AI to explain what each line does when it generates something for you that kind of "learning by reverse-engineering" feels more effective. In the end the most important thing is knowing what you want to build because that makes everything much easier.

Thread Thread
 
sylwia-lask profile image
Sylwia Laskowska

I like how someone earlier in the discussion put it: learning the 20% that gives you 80% of the value is a very practical approach 🙂

Things like Flexbox, Grid, and understanding selectors already go a long way. With that foundation, using AI and reverse-engineering its output becomes much more effective.

Collapse
 
rebeccapeltz profile image
Rebeccca Peltz

Compared to programming languages I've used (Java, C#, Python, JavaScript), CSS is really hard. In any language you look for repeatable patterns and you have a hard time finding them in CSS. Even AI gets messed up if you try to use it to help you with CSS. Part of it is due to the fact that the physical layout of CSS on the web page matters. Another problem is that the words and codes used in CSS don't seem related. There are at least 3 sets of CSS code technologies for layout. You have to master them all to know which to use for a given page or component.
My comments don't even get to using CSS for accessibility. And then a poorly coded layout can effect page load time - which is a pretty common complain received by customer support.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Thank you for this comment - it’s a very honest and grounded perspective 🙂

And I think it’s exactly the kind of point that should give some pause to the whole “AI will just generate it” mindset. CSS has a lot of context, trade-offs, and layout reasoning behind it, and that’s not always trivial to automate well.

You’re also right that performance and accessibility add another layer where decisions really matter. Good CSS can help a lot there, and poor CSS can quietly cause problems. Thanks for bringing that up!

Collapse
 
kinsi profile image
Pierre Kaiser

I've never understood the difficulties developers encounter when they have to use CSS. It's so much simpler than JavaScript. It's beyond me.

To get back to the question: yes, anyone trying to do front-end development should learn CSS.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

True - and yet during learning it’s often treated like a third-tier skill compared to JavaScript or frameworks.

Which is a bit ironic, considering how often it becomes critical in real projects 🙂

Collapse
 
camb profile image
camb

I use CSS, sure.

I use Google Stitch for designs.

I have saved so many tokens by manually modifying the CSS lol

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Haha, I love that line about saving tokens 😄 Sometimes good old manual CSS tweaks are the real optimization ❤️

Collapse
 
krabhi1 profile image
abhi

Stitch is really good and I think it's free for now

Collapse
 
nadeem_rider profile image
Nadeem Zia

very good information provided

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Thanks :)

Collapse
 
hadil profile image
Hadil Ben Abdallah

This really resonated. CSS feels “solved” until accessibility or real-world constraints show up and strip away all the abstractions. Totally agree... frameworks make us fast, but when things break, only solid CSS fundamentals save the day.
Solid read!

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Exactly - “solved” is the perfect word here 🙂 It feels invisible right up until real-world constraints pull the abstractions away.

Thanks a lot - really glad it resonated!

Collapse
 
freelancer2020 profile image
Mostafa

The equation is simple, master the foundation then drive the AI, or don't master anything and let AI drive you.

That said, every front end developer should master HTML, CSS and JavaScript before writing React with tailwind.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Exactly — I’m fully with you on that 🙂 And in my opinion this is especially true with React. It’s very easy to break things (layout, semantics, accessibility) if you don’t have solid HTML/CSS/JS fundamentals underneath.

Collapse
 
ujja profile image
ujja

We are using tailwind+shadcn in our current project and I agree. Not much is left for creativity 😕

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Exactly - I feel that too 🙂 There used to be a lot more room for creative “visual hacking” on the frontend. These days it’s much more straight engineering, and often the UX designer builds the layout around the component library constraints anyway.

Unless you’re working on an early-stage startup - then sometimes the creative chaos still lives on 😄

Collapse
 
ujja profile image
ujja

On top of that, fighting shadcn+shadow dom issues is another challenge. I'd anytime prefer plain css, coz that would make my life far more easier in every sense.

Thread Thread
 
sylwia-lask profile image
Sylwia Laskowska

Thanks for saying that 😄 Everyone keeps praising shadcn as this perfect solution, so it’s refreshing to hear the other side.

Collapse
 
aniruddhaadak profile image
ANIRUDDHA ADAK

Interesting take!

Collapse
 
aniruddhaadak profile image
ANIRUDDHA ADAK

Appreciated

Collapse
 
ulitroyo profile image
Uli Troyo

CSS is great! I suspect I enjoy it because I have an art background, though. Devs without any design training seem to struggle with it, and seem to like things abstracted away. I don't understand that mindset at all. I love the power of modern HTML and CSS, and build my apps around them. Weaving JS around the web APIs rather than handling everything in JS is powerful! My JS just assigns classes or sets custom properties or data attributes, and I set up my HTML and CSS to handle displaying the changes or handling animations.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

That’s awesome - honestly, that’s how it should look 🙂 Using HTML and CSS as the primary drivers and letting JS orchestrate state and classes is a real superpower.

And you’re right - that’s actually how we used to build entire layouts and interactions on the web. Modern CSS and web APIs just make that approach even more powerful today.

Collapse
 
gamelord2011 profile image
Reid Burton

I personally, instead of completely relying on tailwind, use tailwind or css, stack scss on top as to add more powerful things, such as complex hover things. I know that tailwind says dont do it, but its easier than youd think.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

I do something very similar in my hobby projects 🙂 Mixing Tailwind with a bit of CSS for more complex interactions and edge cases is often more practical than staying 100% “pure”.

At work I’m using SCSS as well - but honestly, modern CSS is catching up fast. With nesting, layers, variables, and the newer selectors, plain CSS is getting surprisingly powerful.

Collapse
 
mcondon profile image
Micah

If I had my way I'd work almost exclusively within the native stack when working on the front end - modern vanilla CSS, vanilla JS, web components, zero build, etc.

None of my teammates would like it of course, but I can dream :-)

There's still value in knowing these things - not just the libraries and frameworks built on top of them

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Oh yes - I especially wish Web Components had gained the popularity they probably deserved 🙂 There’s so much elegance in the native stack approach.

And I fully agree - knowing the underlying platform still has real value, even when we build on top of frameworks every day.

Collapse
 
bhavin-allinonetools profile image
Bhavin Sheth

Honestly I felt this 😄
For years I relied on frameworks and utility classes, but the moment accessibility or custom layouts come in, raw CSS knowledge becomes super important again.
It’s easy to ignore CSS until something breaks — then you realize it’s still the foundation of good frontend work.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Exactly — that’s precisely the moment 😄 CSS stays quiet in the background… right up until something breaks, and then suddenly it’s the only thing that matters. Foundations are boring — until you need them 🙂

Collapse
 
snowysaba profile image
ducky

Not at all — CSS is still a core web skill in 2026. Even with frameworks and AI tools, understanding CSS helps you customize designs, fix issues fast, and build better user experiences. Strong fundamentals always pay off.

For discovering useful web tools and resources, I often check DuckVisionAPK

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Absolutely — strong fundamentals really do pay off over time 🙂 Frameworks and tools can speed things up, but understanding CSS is what lets you customize confidently and fix the weird stuff when it shows up. Thanks for sharing your perspective!

Collapse
 
abustamam profile image
Rasheed Bustamam

Great article! You're right, I can't think of the last time I wrote real css and not tailwind or chakra. It's kinda similar for LLM-assisted development. You lose what you don't use!

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

And funnily enough, in the specific accessibility task I mentioned, even the LLM couldn’t really help - the layout and styles were such spaghetti that it just gave up with very confident but very wrong suggestions 😂

Collapse
 
aadswebdesign profile image
Aad Pouw

Well, as a non-professional I stick to pure CSS and leave those frameworks behind.
I not say that I know it all and there is no need for too because there is MDN where I can find all I don't know.
What is important, is understanding the inheritance of CSS!
Another thing is, it begins allways with a proper HTML structure.
If that's a mess, then the CSS becomes an endless fight!

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Totally agree - proper HTML structure makes a huge difference. When the markup is clean and semantic, CSS becomes much more predictable. When it’s messy… it turns into a never-ending battle 😄

That was actually one of the main reasons my accessibility task took so long - the HTML structure underneath was pretty chaotic, so every CSS fix had side effects somewhere else.

Collapse
 
_5ef591a72f18003155d profile image
辣条卖泡面

What a revelation!!! I’m a computer science major in university. I learned Java backend development and found it’s incredibly hard to land a related job, so I started learning frontend development and JS-based full-stack development instead. I asked Gemini how to learn the most modern frontend tech stack properly, and it just told me to casually go over the three fundamentals – HTML, CSS, JS – then move on to React/Vue, and after that, learn Tailwind CSS. I’ve come to realize that fundamental technologies are no longer heavily recommended by AI these days.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Hahaha I didn’t expect that one 😄 Maybe LLMs are deliberately downplaying the fundamentals so we become fully dependent on them one day 😄

Jokes aside, the core stack (HTML, CSS, JS) is still incredibly important. Frameworks change, tools change, trends change, but the platform stays. Skimming the basics is fine for orientation, but going deeper really pays off later.

Collapse
 
starkraving profile image
Mike Ritchie

I would expand on that and add HTML learning to the mix as well. I’m on a team of much younger developers, and by democratic process we’ve (they’ve) chosen ShadCN and Tailwind for our React primitives. When I look at the source of our components, all I see are divs, spans and buttons, and onClick events everywhere. Just to prove a point I rewrote some of the components using modern CSS anchor positioning and HTML popovers. They were leaner needing less JavaScript, and were accessible out of the box because they used native browser features.

I was told that they didn’t want to own the code, and it was up to the maintainers of ShadCN to stay up to date with the advances of HTML and CSS. Fat chance of that happening: their checkbox alone is 131 lines of JavaScript and uses — you guessed it — a button with a checkbox icon. Why learn HTML and CSS when ShadCN can just install a “checkbox” for you?

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Oh wow - thanks for bringing this into the discussion 🙂 That’s a really interesting (and slightly scary) example. I haven’t dug that deeply into shadcn’s internals myself, but what you describe doesn’t sound great.

I suspect this is exactly the kind of thing that becomes very visible during the first serious accessibility audit. And those are becoming more common now - many clients require compliance either because of legal obligations or simply because they don’t want to lose users out of the box. Rough estimates say around 10% of web users have some form of disability, which is not a small number.

It’s ironic because shadcn is often praised as a gold standard. Tools are helpful, but this is a good reminder that native HTML and modern CSS still carry a lot of built-in value if we use them well 🙂

Collapse
 
francistrdev profile image
👾 FrancisTRDev 👾

I read the title and I was like...h u h:

I kept on reading and it makes sense. Never judge a post by the title lol.

Short answer: No.

Long answer: You are learning CSS regardless of if you are using Tailwind and such. For my projects, sometimes I go back to CSS even though I used bootstrap for my application because of getting small tweaks onto the webpage. I never really thought about accessibility until you mentioned it, which I found it interesting when you mentioned keyboard navigation.

I tend to think accessibility when it comes to HTML and JS. I treat CSS as just a "style" in a literal sense to make the webpage visually neat. I remember one of my courses taught CSS, but not as much to the point where our assignment in CSS is optional. I believe it should at least mention how important it is for accessibility since they failed to mention it.

I gave you a follow after a couple posts since you make great takes on the Development world! Awesome work!

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

That’s a great takeaway - and I really like your “short answer / long answer” framing 😄
You’re absolutely right that even when we use frameworks and utilities, we’re still learning CSS - just sometimes indirectly.

Accessibility is a really big deal, and it’s often underestimated. Roughly around 10% of web users have some form of disability, so these details genuinely matter. And CSS plays a bigger role there than many people expect - especially with focus states, visibility, and interaction feedback.

I’m really glad the post resonated with you - and thank you so much for the follow, that means a lot 💙

Collapse
 
georgekobaidze profile image
Giorgi Kobaidze

I still remember the first time I discovered CodePen. I was completely blown away by what people were creating with just HTML and CSS (yeah, sometimes without even JS). That's when it clicked for me: programming wasn't just engineering it was art. Maybe even more art than art itself.

I decided I'd learn it, no matter how hard it was. I started from the basics, tried reading other people's code (by far the hardest part), and spent weeks grinding. But I struggled partly because I hate writing markup, partly because those creators had years of experience while I had weeks, and partly because front-end wasn't my main focus. I was (and still am) a back-end dev, and I didn't want to derail that path. Thankfully. At the end of the day, CSS isn't even a programming language.

Fast forward to today. If I wanted to build the same thing I struggled with back then, I'd just write:

“Hey Copilot, generate X with Y effects, and Z on success."

And boom, doesn't matter what X, Y, or Z is, seconds later, it's there. Maybe not perfect on the first try, but it's doesn't take too many trials does it? Back then I needed hundreds of attempts to get close to what I imagined. AI just gets you there almost instantly, and sometimes it's even better than you had imagined.

Some people ask, "What if there's no AI?" But let's be real it's everywhere. Even refrigerators have AI now. The only time I don't have internet is on a plane and to be honest, coding on a plane is absolutely unproductive, so I don't do it - my knees are usually in my chest (especially if it's an Airbus, Boeings are usually fine) my back is screaming, I can barely open my laptop.

What I'm trying to say is, yes if someone's real passionate about learning and mastering CSS, more power to them, one should always do whatever they enjoy. But they should also really question how valuable it is. As I mentioned, it's not even a programming language and let's be honest, it's not fun...

So I happily delegate writing CSS to AI. I still review it, of course, just not as deeply as my front-end or back-end code. At this point, spending serious time on CSS feels like a waste.

But, again, this is just my humble opinion.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

That’s a fair and honest take 🙂 I think the same logic can be applied today to almost any less-used or less-liked technology though. I could say the same about Rust, for example - that I don’t need to learn it because AI can generate what I need. And yes, that approach can work fine for small things or personal projects.

The catch is what happens when the stakes are higher. In production environments, when audits, performance issues, accessibility reviews, or tricky edge cases show up, “AI generated it” stops being a sufficient explanation. That’s usually when you need at least a solid mental model of what’s going on under the hood to debug, optimize, and make good decisions.

So I don’t see it as “everyone must master CSS deeply,” but more as: the more critical the context, the more valuable real understanding becomes. AI is a great accelerator, but it doesn’t fully replace judgment or experience 🙂

Collapse
 
shemith_mohanan_6361bb8a2 profile image
shemith mohanan

Totally agree with this. CSS didn’t get worse — we just stopped touching it deeply. Frameworks hide the complexity until accessibility or edge cases force you back into fundamentals. That’s usually the moment you realize how much real CSS knowledge still matters. Great reminder that abstractions are helpful… but not a replacement for understanding what’s underneath.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Exactly — you summed it up perfectly 🙂 Abstractions are great productivity boosters, but they’re more like a layer of comfort than a substitute for understanding what’s underneath.

And accessibility and edge cases have a very reliable way of peeling that layer off 😄 Thanks for the thoughtful comment!

Collapse
 
leob profile image
leob

I could even center an element both vertically and horizontally — without Googling 😄 - that's so impressive, coz I still have to google that every friggin' single time I need it ... 😄😄😄

P.S. on a serious note - yes, I would think that learning CSS is still important, because it's the foundation - or am I something of a "dinosaur" already, haha?

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Looks like we might both be dinosaurs then 🦖😄
But honestly, if knowing and valuing the foundations makes us dinosaurs, I’m perfectly fine with that!

Collapse
 
shashidharlbs profile image
Shashidhar Naik

Great article. After a few years in frontend, I’ve learned that abstractions don’t remove CSS — they just postpone your interaction with it. When things break (layout, focus, stacking, responsiveness), fundamentals are what you fall back on. CSS hasn’t become less important; it’s just less visible until it suddenly is.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Exactly - that’s perfectly said 🙂 Abstractions delay the pain, but they don’t remove it. And when things finally break, any gaps in the fundamentals become very visible, very fast.

Collapse
 
70rn4d0 profile image
70rn4d0

True, we have many tools now, but CSS is the DNA of the web. Understanding the basics isn't a waste of time, it's an investment in deep knowledge. Even if you don't use raw CSS in your job, knowing how it works allows you to debug complex UI issues that others can't solve.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Absolutely 🙂 And for many younger devs today it often feels like pure black magic - until the moment they have to debug something that no abstraction can explain.

Collapse
 
ezeh_chidinma_bd31710dc88 profile image
Ezeh Chidinma

Amazing Read, as a beginner in the developer field i'm drawn to the idea of learning the Basics and css is my favorite. Making things easier and faster is cool, but building from scratch is pure fun... atleast that's what it feels like to me.
Thank you so much for sharing

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Glad it resonated with you 🙂 And yes - building things from scratch really is a nice act of creation. There’s something very satisfying about seeing your own ideas turn into a UI piece by piece.

Enjoy that phase - it’s a great way to learn and to have fun at the same time ✨

Collapse
 
dirigiblejoe profile image
JT

All my websites are "grandma's handmade pasta." They're clean, fast, simple, and elegant. Pure CSS and a little JavaScript where needed.

I've tried Tailwind, Bootstrap, Bulma, Pico, etc., but they have too much cruft and not enough fine control to do exactly what I want.

I think frameworks were very helpful 5 or 10 years ago when CSS was more limited and browser implementations were inconsistent (and Microsoft IE still plagued us), but modern CSS is so much more powerful, and browsers are so much more consistent, that CSS is all I need.

The most useful things are CSS snippets that I can copy/paste/adapt, rather than a complicated framework, preprocessor, and other baggage.

(But then I created my first websites by hand using the BBEdit text editor in 1995, so maybe that's just me. 🙂)

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Thanks for this thoughtful comment - I really enjoyed reading your perspective 🙂 I like your approach to keeping things clean, simple, and intentional. There’s a lot of elegance in well-written, minimal CSS when someone really knows what they’re doing.

My first website was around 1999, and I wasn’t using anything as advanced as CSS yet, just good old inline attributes like font size="5" and color="red" everywhere 😂 Different times, different tools, but the same joy of building things for the web.

Collapse
 
99tools profile image
99Tools

No. It's not waste of time. It's investment of time for the future.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

💯

Collapse
 
_9942848bd8d9e58b9b7f7aa profile image

哇,简直太棒了

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

太感谢了!

Collapse
 
_9942848bd8d9e58b9b7f7aa profile image

继续努力

Collapse
 
gramli profile image
Daniel Balcarek

Nice article! I can't even count how many times I've googled: How do I center an element both vertically and horizontally 😆

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

A true classic 😄 And it was especially painful back in the pre-Flexbox days.
Centering something vertically used to feel like solving a puzzle rather than writing CSS 😅

Collapse
 
alohci profile image
Nicholas Stimpson

Try vertically centering an auto sized div in a div in IE6. It wasn't just hard, it was impossible - hence tables for layout, because you could vertically center content in a real <td> element.

CSS at the time had several methods for vertically centering such divs, but because of various bugs, none of them actually worked in IE6.

Thread Thread
 
sylwia-lask profile image
Sylwia Laskowska

Thanks for the IE6 trauma reminder — I had almost managed to repress that memory 😅

Collapse
 
developer_aaditya profile image
Aditya Yadav

CSS is still important, but it shouldn’t be the end goal.

Most real-world projects fail not because of bad CSS,
but because of poor structure, logic, and maintainability.

Balance matters.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

I have a feeling a discussion about why real-world projects actually fail is a whole separate post on its own 😄 You could write a book just on that. Balance definitely matters though 🙂

Collapse
 
rebeccapeltz profile image
Rebeccca Peltz

Great article!

Collapse
 
tombeek profile image
Thomas Beek

It's not very complicated and knowing it gives you so much more of an advantage when you're trying to debug things. So no, it's absolutely an essential skill for any web developer to know.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

True - CSS itself isn’t that hard, but the nuances… ah, that’s where things get interesting 😄 And that’s usually what makes the difference in debugging.

Collapse
 
6116hayat profile image
Umar Hayat

Loved the read,
It really gave a time to rethink myself back:

  • How often I use CSS?
  • Will I shift to plain simple CSS, in comparison to the new frameworks.

Thanks for this wonderful article.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Thank you so much - I’m really glad it made you stop and reflect a bit 😊
And honestly, I won’t pretend it would be easy for me to switch back to pure, framework-free CSS either - I’ve gotten very used to the modern tooling. But it’s still a great skill to keep alive.

Collapse
 
vasughanta09 profile image
Vasu Ghanta

Solid insight—CSS fundamentals remain crucial for accessibility and custom fixes; instead try container queries, :has(), and cascade layers for modern efficiency.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Thanks! Totally agree - modern features like container queries, :has(), and cascade layers are great examples of how CSS is evolving, not disappearing 🙂

Collapse
 
brense profile image
Rense Bakker

CSS is definitely part of the dark arts, the people who wield it are called frontend magicians for a reason!

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

I love that - “frontend magicians” is such a perfect term 😄 And honestly… there’s a lot of truth in it.

Collapse
 
juaniquillo profile image
Victor Sanchez

No

Collapse
 
playserv profile image
Alan Voren (PlayServ)

CSS isn’t “dead” or useless in 2026. Even if you mostly use frameworks and utility classes, real CSS still shows up in every UI project and in accessibility fixes.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Exactly - it never really leaves the stack 🙂 Frameworks can wrap it, but sooner or later real CSS always shows up in the critical fixes.

Collapse
 
sooc profile image
Sydney Amoah

Like seriously 😁

Collapse
 
minh_nguyen_f59c748237803 profile image
Minh Nguyen

Not at all. I actually enjoy hacking at CSS, albeit with some frameworks.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

That’s the best combo honestly - enjoying CSS and using frameworks where they help 😄 Best of both worlds.

Collapse
 
drake_kuwait_ddea6374d481 profile image
Drake Kuwait

Contact me I'll tell you why it's a waste of time

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

🙃

Collapse
 
madhu_m_5b50709c225b8cd84 profile image
Madhu M • Edited

now having a feeling spending more time basics never gona be a waste :) need better roadmap for java fullstack focusing backend, it would a great help to get now for me

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Totally agree - time spent on fundamentals is never wasted 🙂 Getting the basics right makes everything else easier down the line. Good luck on your learning journey!

Collapse
 
_9942848bd8d9e58b9b7f7aa profile image

good

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

Thank you :)

Collapse
 
luuk_schalk_3be6dfa369fca profile image
Luuk Schalk • Edited

Learn CSS! Every application looks the same nowadays (looking at you shadcn). Make yours stand out!

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

100% true 🙂 At the end of the day, users - and clients - really do buy with their eyes. Knowing CSS is still one of the best ways to make something truly stand out.

Collapse
 
redjoe0608 profile image
Jyothi Swaroop

I have just started my software engineering journey in frontend, and I will definitely not take CSS for granted.

Collapse
 
sylwia-lask profile image
Sylwia Laskowska

That’s a great mindset to start with 🙂 CSS will reward you more than you expect over time. Good luck on your frontend journey — you’ve got this! 🚀

Collapse
 
jeganmurugan_0101 profile image
S.M. Jegan

That correct CSS is the hardest part of front-end development. Sometimes I tried to learn, as you mentioned, but making it a center-aligned page is harder without Google 😅. I switched into backend development. Are there any tips improve that

Collapse
 
matty_brown_563b38cbce43e profile image
Matty Brown

I had a bad feeling about my Husband, I noticed he always came home lately Though he give a lots of excuse which was a lot of lies i wanna clear my doubt if hes upto something because he used his devices without passwords Now he has all of them coded I need to access the devices remotely I came to this site for a good hacker,Who i got thruough was Spyhackelite And thanks to god he deliver to my satisfaction.. only recieves dm via gmail spyhackelite @ gma il com