In this last poll, we asked:
In the next 10 years, will there be a serious alternative to CSS?
Of over 9,000 votes so far, the majority are of the opinion that there will not be:

Of course, it’s nearly impossible to predict the future of technology. Especially that far out in an industry that moves fast (and accelerating). But anyway, here are my thoughts.
I would define “serious alternative” as a new technology that you could actually use to design a website (or whatever we call interactive interconnected screens in ten years) and have at least 25% of devices displaying that website as you intended. So first this new technology is a language the addresses what CSS does now (more or less) and second that new language is adopted by real browsers.
That’s a tall order. I’d say it’s not going to happen.
One, CSS has been around for decades already. It’s taken that long to get into as good of shape as it is now and have everyone agreeing on it. That is likely to speed up, but only because the major players involved are getting used to the process and the process is improving. A brand new technology would likely face all the same barriers and slowness that CSS originally did.
Two, for all CSS’s shortcomings, it’s pretty good. Look at all the amazing websites it’s powering today (hint: nearly all of them). For something new to come along and address all the detailed complexities of web authoring in only 10 years would be amazing. There would have to be previews of it happening now for proper feedback to get the ball rolling fast enough for anything to happen in 10 years.
Three, the fact that there isn’t anything (at least on my radar) even poking at CSS makes it seem unlikely that something will come out of nowhere and be a contender.
I’d say Flash is the closest contender and that’s on the way out, not in.
Interesting stuff folks, thanks for voting in the poll and commenting. I think we’ll do another philosophical style post this week, they always generate the most interesting comment threads.
Full, real time results for this poll and all post polls are in the polls archive.
In all honesty, I think CSS contenders already exist. Fact of the matter is, that for backwards compatibility you compile them into CSS. Tools such as LASS and SASS et. al. Just like you can use XML + XSLT on the backend and compile it into HTML.
On the browser side, we’re going to be stuck with HTML, JavaScript, and CSS for a very long time. Google’s attempt to change things with Dart is slow at best. People don’t like implementing multiple things side by side, nor do they like change. While CSS is here to stay, I think tools that extend its use server-side and make it work through some sort of server or javascript magic will ultimately take its place.
Woa… even with all the posts and reading that I’ve done about CSS and LESS and SASS – I’ve never had the thought “what if Firefox, IE etc. just built in SASS and we wrote that in instead of CSS?” Perhaps it takes me a bit longer than that average person to “get it”; but, instead of seeing SASS as a “lazy man’s alternative to learning ‘real’ CSS,” we should all be looking at it as a “great new language with ‘backwards compatibility’ to the ‘Old’ language.” Works for me.
Frankly, from the first time I sat down with CSS, some (***) years ago in the stone age with CSS.1, I shook my head and said: “this is stupid that I can’t use variables.” I mean every language has variables!” Even back then, there was a huge black hole, I thought, in its design. It seems like for 20 years I’ve kept telling myself “they’ll recognize this and fix it with the next version”; so, SASS etc was really no surprise as it fixed a ‘glaring hole’ that surely must be obvious to everyone!(?) Perhaps someone can fill me in; but, where is the working group when we need them? STILL no mention of variables in the CSS standard? Really?
@Chris – how about it? Is this something that you could wrap your interest around and even use the ‘bully pulpit’ of the largest CSS readership in the world and all your connections, to fix this? [Or at least do a tut to explain possible rationale they are using for NOT adding them? What am I missing?]
I’ve used PHP with CSS, and had great success adding variables to CSS.
Why is flash the closest competitor, it is not used for layout.
I guess that says something about the competitors to CSS!
Flash is a great alternative to CSS for page layout. It can be accessible, responsive, consistent across browsers and platforms, and easier to control when it comes to things like fonts and custom graphics. You may not have seen it used this way very much, but it can definitely be an elegant solution to handling the presentation layer of a site. However, it is indeed on the way out, and will not replace CSS.
I think this calls for a quote from, if I must, the Bieber: “Never say never.”
I’m sure there’s somebody out there with some pretty great ideas for how to do things better, and learning from the strides made with CSS, there is a great springboard to leap from. If somebody can find a way to do things faster and easier and meet or exceed the capabilities of CSS, then why not? It would take a tremendous amount of convincing to get people to switch from CSS, but I’m all for progress.
CSS still has a long way to go!
We have only reached CSS3. I predict CSS4 … CSS9, maybe even further.
According to Wikipedia CSS has only been used in practice since ’99 (with the first spec published in ’96), and ironically it was IE 5 that had full support. Given that it’s therefore only 16 years old (incredible to think!), it’s maybe not totally inconceivable that something new could come along.
It took a while since we’ve got HTML5 and its implementation hasn’t finnished yet. That says a lot of things. Internet world isn’t really capable of changing things drastically in a short period of time. So I don’t think CSS will have a strong competitor soon. If one will make it happen, will be a rich man. Needs some serious politics tho. If Microsoft will be taken over by Google… it could happen.
CSS will always play a role but it’s biggest threat is in the proliferation of pixel density and the lack of vector based solutions. I see SVG or Canvas taking on larger roles but never completely replacing CSS.
CSS has a few good vector-like attributes now but those get pushed to limits quickly and rastered images take over. After that point, it becomes much harder to be responsive to the user environmental or build interactions with the element.
Further, the current vector options in CSS are like layer styles in Photoshop. They have quickly become tiresome and stale. Designers want full pallet of choices, not more predetermined tools. This is a problem that could be better solved with a vector based language.
Lance, my friend, I think you missed the mark by that much.
SVG is not a competitor to CSS; you can’t replace CSS with SVG and you wouldn’t want to. Lets ignore the fact that SVG uses CSS for a lot of its own styling.
The future of Web Design should not be in some replacement for CSS, but for HTML.
Now that most current browsers support SVG natively and, more importantly, implement the <foreignObject> tag, we finally have the tools to do design the way it ought to be: SVG for the layout, HTML for the content.
You’re right; the closest thing as a CSS competitor is Flash, but that’s pretty much out the door. And if anything, CSS/javascript is about to supersede it. I remember trying to make a simple navigation bar in Flash and I was totally lost; then of course there’s ways of doing it with CSS and it is much much easier!
The case and point is CSS is widely supported, and in places it’s not there is documentation for alternatives via Javascript/jQuery, so CSS is here to stay, and it’s getting better all the time.
However, come to think of it, while I think CSS is a much superior way of building a website instead of Flash I will say this, it could very well be the NEXT Flash. Because CSS is very powerful at targeting selectors and applying filters, I can see some serious abuse of it somehow. Particularly because there’s new image filters in webkit and I think things like that can abuse the functions of CSS.
Pardon me, I’m being tangential, and I could be wrong. Either way, I like CSS and I don’t see anything replacing it in the next decade, particularly since there’s huge support for it so a replacement would just throw a spanner in the works.
I concur I think something like SASS will replace it. where you instead of linking to css files you’ll link directly to .SCSS and and deliver that to your clients as aa deliverable.
Yes, you are right. I do also feel this. Thanks for the poll result.
Hi Chris. I want to ask that if you can write a post, email etc.. about how to make “Date of post” and comment # seen like at here, css-tricks.com .
This industry changes so fast that I would be surprised if anything was the same in 10 years. There are so many issues with CSS that it almost begs for a better solution. I envision something that kills the cascade/inheritance if desired (a capability I wish I had on a recent project btw).
Well, I think that CSS is really the prime mover for most of our web designs. LESS and SASS are just there to make CSS simpler. I think nothing could replace CSS in what it is right now – unless you are reinventing the web. So, CSS will stay even after until our hairs turn to gray.
Have a look at the new Sproutcore beta “Blossom”. They have have built a whole widget library based entirely on the html5 canvas, bypassing the DOM and CSS entirely.
At least for web applications, I think we will start seeing approaches like this popping up quite a bit within the next 10 years.
If any changes happen on this front I see an evolution rather than a revolution.
For the most part we’re generally happy with CSS, yes we all have our complaints, though most of the time it’s implementation (bugs, browser support).
Flash is on the way out for the web (Adobe is giving up on mobile Flash, iOS will never have it anyway, IE10 in Metro mode won’t support it).
From where I can see right now there’s only one thing that might happen, built in LESS/SASS support.
I voted No but because I think in the future yes css might still be there but those using it on their websites apps etc may not even have an idea they are using something called css, the rise of grid systems ,cms,one could not even need to type a line of css when its all done for him,all one will need to do is think how he wants a particular element to appear and do it.
type on the first line ,there should be a way to edit this comments
Hope you guys don’t get me wrong, i’m usually always excited for new tools and methods, but… I just think that some stuff don’t need to be “replaced”.
Like other peopls said above, if you want to change anything, create new tools like SASS, LASS and etc, or even contribute to them, to make CSS easier to implement.
Being old isn’t enough reason for something to be replaced. After all, do you “replace” your grandparents for new born kids?
Also, unlike other technologies, CSS is always being a hell lot improved. Back years ago, if someone would ask you to make a rounded gradient button, you’d need to draw it in Ps or something, save as PNG, and then use it as background image of a button.
Now you can do this by just plain and simple CSS. Simpler, easier, quicker, and better for further alterations.
Nowadays, with CSS3 animations you can almost even replace flash in a website. Yeah, i know it’s still not enough, but who knows what comes next.
So, i say, there’s no need at all to replace CSS, but there’ll be always enough room to improve it.
It’s always nice and refreshing to see new platforms and technologies but I can’t see CSS being replaced as such on a large scale. I think big developments will come with the huge boom in mobile tech, but a replacement, no.
I agree, I think we are more likely to see more radical features added to CSS itself, or more sophisticated ways of generating it. Now I’d like to see vendor resets in all browsers, a couple of lines of code and no nasty surprises..
I think alien technology will prevail. CSS will be a thing of the past, the only thing to overcome will be the sticky pads for alien hands. More cumbersome than Macs!
It’s funny how we are pondering the demise of CSS, when it’s only NOW that is BEGINNING to 1) Mature ( as in offer some seriously cool features) and 2) begin to (vendor-prefix mess aside ) enjoy broad standard implementation. Sure it’s not perfect, but do you seriously expect any contender would be.
Also, isn’t SASS, LESS, etc… STILL CSS? I don’t think compiled code counts as the demise of code.
It’s also interesting, I saw someone’s previous comment about Flash being more cumbersome than CSS. I had the opposite experience, coming from a print bg, my first successful forays into web were flash sites. As I have developed ( pun) as a designer/coder I realize that the old flash sites were a crutch for not taking the time to learn html/css… and a sign on the lack of understanding of clients at the time. Flash, while impressive, puts presentation and interaction over content… I don’t think that’s what the web is about an we often forget that.
I don’t think anything will replace CSS, but I definitely think something should. From day one CSS has been a painful shitshow and it still is.
I think Douglas Crockford sums up the entirety of the CSS debate with this quote:
“I find within the community of people who use CSS great affection for it. They’re totally invested in CSS, they love it. They can’t imagine any other way of doing formatting in a document. It’s it. It’s sort of like watching an episode of Cops where the cops come in and break up the family dispute, and there’s this “CSS ain’t bad, you just don’t understand it like I do. I know it hurts me, but I make mistakes, I’m wrong.” CSS is awful, and it amazes me the way people get invested in it. It’s like once you figure it out, kind of go “oh, OK, I see how I might be able to make it work,” then you flip from hating it to loving it, and despising anybody who hasn’t gone through what you’ve gone through. It doesn’t make sense to me.”
@Andrea CSS is not the problem. The problem has been non-compliance by browsers, specially IE.
I disagree, yes the non-compliance by browsers doesn’t make anything better…but the entire concept of the DOM and the kludgy, annoying way we style its appearance with CSS is totally broken, cumbersome and illogical. Look at us all getting excited about variables and mixins from SASS/LESS when what we should be doing is dumping the whole thing and full on embracing SVG or Canvas.
Completely agree with jzigbe Internet Explorer is a complete nightmare!
Ive tried version 10 in Consumer Preview Windows 8 and its still has the same issues!
Nonsense. It might help if you wrote valid code.
While not so blunt as Gunner, I have only found one quirk with IE9 so far which is using gradient and rounded corners on the same element. Other than that IE9/10 render just as FF/Opera/Chrome (safari barely counts)
I assume there will be, but CSS will still rule.
i think it’s possible that the style and behavior of the page combine together in the future .. because althought we call it “Cascading Style sheet”, but most of the time it’s about the page behavior. and i think it will be a great combination.
but contender ? …. i don’t think so.
Well, what do you guys think about the AXR project?
Nice article i found great info
Css is seriously illogical. We NEED layout management to be written by a mathematician, not a designer.