On Twitter, we like to discuss the latest technologies and ideas like how to integrate CSS the best way into our web app stacks using ES6 modules. One after another ES7 feature is being pushed into browsers, and yet we tend to forget what the majority of developers need. It’s due to us living in this tiny bubble called Social Media—channels not everyone is following.
When we look at what has been added to browsers this year, you can see amazing statistics.
Microsoft’s Edge browser got support for complete ES6 standard, and browsers pushed hard
to implement security features and improve the performance. New features such as WOFF2 for
webfonts, Web Notifications API, VP9 video playback,
calc(), are great and some of them
help every developer. Most of these features are not used by the majority of developers though.
Who uses VP9 today, or the Web Notifications API? Not the normal developer.
The issue is: We got plenty of new, great features but I’m pretty sure that most of these
features are not used very frequently by developers. They might be used by some big sites,
but not by the normal developer in an agency working on corporate websites and similar
projects. Instead, these developers are still suffering from the lack of basic features in browsers.
Which, you ask?
CSS Grids are still not supported anywhere to its full extend, meaning we as developers can’t use it for production.
<use> method, used to display icons in a sprite, is still not usable from 3rd-party
domains due to the missing CORS implementation.
<details><summary> is still not supported by every browser,
clip-path is still not usable, we can’t use
position: sticky, the
font-size-adjust, Scroll Snap Points,
and many other useful features.
Now for a fun fact:
object-position are still not supported in Edge
despite the fact it’s been
requested since over two years now and has over 2800 votes—a number most of the already
implemented, edge-case ES6 features never reached. This shows quite good that all the browser
companies follow a marketing strategy and instead of providing helpful features, rather
spend time on completing a feature-set so they can claim 100% ES6 support.
It’s nice that the people in the Edge team tell us that they listen to developers but it’s
hard to believe that when I read through essential CSS features that are still not in Edge,
but most other browsers.
In 2016, no single CSS feature that has a big impact for developers has been landed in all major browsers. It’s even hard to find significant additions in each browser, which makes me even more sad.
We don’t yet have any solution for locking down aspect-ratios. Hell yes, it’s 2016
and we can’t define an aspect-ratio for videos, images or other containers. I see people
websites for displaying nice picture-grids. But there’s literally no way to do it with
plain CSS at the moment since neither
aspect-ratio is supported by all
In nearly every client-project that wasn’t a product itself but a website, I was requested
to build a design where I need
position: sticky. And
for most I could have saved a lot of hours if CSS Grids would’ve been available for all browsers.
Instead, I now can use ES6 features I don’t even need for complex web applications (there’s still
Babel for you) in the browser.
We have to think about the people we don’t have on our radar. The people that don’t participate on Twitter, Google Plus, Facebook, and are not raising their hands at conferences. They are still the majority of developers—not we, the little “Twitter-bubble”. We may shape the future of the web, but it’s our duty to care about all developers, not just us.
Now, can we please give this feedback nicely back to the browser vendors and W3C people? Yes, let them know. Write them on Twitter, via Email, on bug trackers, on uservoice, at conferences.
PS: It’s still hard to trace down what has been changed in Chrome since they’re the only company that publishes no useful changelogs. I expressed my feelings to the Developer Relations team on this often enough that I can now say: I don’t care about Chrome’s changes anymore. This sadly means I could be wrong on some things here by missing a Chrome change, but it’s certainly not a big change—otherwise we’d all know about it.