CSS Feature Queries
How to work with feature queries in CSS
Feature queries are a recent and relatively unknown ability of CSS, but a well supported one.
We can use it to check if a feature is supported by the browser using the @supports
keyword.
This is an example I think this is especially useful, at the time of writing, for checking if a browser supports CSS grid, which can be done using:
@supports (display: grid) {
/* apply this CSS */
}
We check if the browser supports the grid
value for the display
property.
We can use @supports
for any CSS property, to check any value.
We can also use the logical operators and
, or
and not
to build complex feature queries.
This example checks if the browser supports both CSS Grid and Flexbox:
@supports (display: grid) and (display: flex) {
/* apply this CSS */
}
→ Get my CSS Handbook
I wrote 21 books to help you become a better developer:
- HTML Handbook
- Next.js Pages Router Handbook
- Alpine.js Handbook
- HTMX Handbook
- TypeScript Handbook
- React Handbook
- SQL Handbook
- Git Cheat Sheet
- Laravel Handbook
- Express Handbook
- Swift Handbook
- Go Handbook
- PHP Handbook
- Python Handbook
- Linux Commands Handbook
- C Handbook
- JavaScript Handbook
- Svelte Handbook
- CSS Handbook
- Node.js Handbook
- Vue Handbook