
Tired of battling CSS specificity wars?
Meet CSS Layers.
A native solution to organise and control your stylesheets more effectively.
Why use them?
- Manage specificity and source order with ease.
- Avoid unintended overrides from third-party styles or components.
- Enhance maintainability in large codebases.
How to implement: This part shows how to set up and organize your styles using CSS Layers:
@layer secondary, main;
This line declares the order of your layers. It’s like a priority list:
secondary
layer loads first (lowest priority)main
comes after (highest priority)
Then, you define your actual styles inside those layers:
@layer main {
/* your style */
}
@layer secondary {
/* your style */
}
Each layer is scoped, and the order you define them in the initial @layer line determines their priority.
Check out the visual:
- Left = classic CSS behavior → body h1 wins with higher specificity
- Right = layered CSS → h1 in the main layer wins, even with lower specificity
95%+ browser support makes this a no-brainer to start using now.
To learn more tips about CSS, make sure to join my newsletter below ❤️