A deep dive into the Liskov Substitution Principle with examples, violations, and practical tips for writing scalable, bug-free object-oriented code.
This article walks through new CSS features like ::scroll-button()
and ::scroll-marker()
that make it possible to build fully functional CSS-only carousels.
Let’s talk about one of the greatest problems in software development: nascent developers bouncing off grouchy superiors into the arms of AI.
Flexbox and Grid are the heart of modern CSS layouts. Learn when to use each and how they help build flexible, responsive web designs — no more hacks or guesswork.
2 Replies to "New in Chrome 76: The frosted glass effect with backdrop-filter"
Instead of writing
@supports (backdrop-filter: none) {
…
backdrop-filter: blur(8px);
…
}
one should be writing
@supports (backdrop-filter: blur(8px)) {
…
backdrop-filter: blur(8px);
…
}
because you’re not in fact interested if the browser supports “backdrop-filter: none”, right?
This is especially important once you realize that the same property (e.g. display) supports values with wide range of support by different UAs.
Hi Mikko,
The idea is to query the support of the property instead of the value. Querying for “backdrop-filter: none” will throw the same true / false result as querying for “backdrop-filter: 8px”, but allow us to change the value in a single place if for whatever reason we decide to do that in the future.
It might not be such a dramatic impact in the small scale, but going with a query for property+value can lead to issues as the codebase grows and we start to have a lot of repetition and forgotten queries that doesn’t really make sense.
Your point is certainly valid for properties such as display or position, but for most others, querying for property instead of property+value is a better approach in my opinion.