useSortedProperties
Summary
Section titled “Summary”- Rule available since:
v2.0.0
- Diagnostic Category:
assist/source/useSortedProperties
- The default severity of this rule is information.
How to enable in your editor
Section titled “How to enable in your editor”{ "editor.codeActionsOnSave": { "source.action.useSortedProperties.biome": "explicit", "source.fixAll.biome": "explicit" }}
{ "code_actions_on_format": { "source.action.useSortedProperties.biome": true, "source.fixAll.biome": true }}
Use the source action code
source.action.useSortedProperties.biome
Description
Section titled “Description”Enforce ordering of CSS properties and nested rules.
This rule ensures the contents of a CSS rule are ordered consistently.
Properties are ordered semantically, with more important properties near the top and similar properties grouped together. Nested rules and at-rules are placed after properties.
The ordering is roughly:
- Custom properties
- Layout properties (display, flex, grid)
- Margin and padding properties
- Typography properties (font, color)
- Interaction properties (pointer-events, visibility)
- Background and border properties
- Transition and animation properties
- Nested rules, media queries and other at-rules
Examples
Section titled “Examples”Invalid
Section titled “Invalid”p { transition: opacity 1s ease; border: 1px solid black; pointer-events: none; color: black; margin: 8px; display: block; --custom: 100;}
code-block.css:1:3 assist/source/useSortedProperties FIXABLE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ℹ The properties are not sorted.
> 1 │ p {
│ ^
> 2 │ transition: opacity 1s ease;
> 3 │ border: 1px solid black;
> 4 │ pointer-events: none;
> 5 │ color: black;
> 6 │ margin: 8px;
> 7 │ display: block;
> 8 │ —custom: 100;
> 9 │ }
│ ^
10 │
ℹ Safe fix: Sort these properties
1 1 │ p {
2 │ - ··transition:·opacity·1s·ease;
3 │ - ··border:·1px·solid·black;
4 │ - ··pointer-events:·none;
2 │ + ··--custom:·100;
3 │ + ··display:·block;
4 │ + ··margin:·8px;
5 5 │ color: black;
6 │ - ··margin:·8px;
7 │ - ··display:·block;
8 │ - ··--custom:·100;
6 │ + ··pointer-events:·none;
7 │ + ··border:·1px·solid·black;
8 │ + ··transition:·opacity·1s·ease;
9 9 │ }
10 10 │
p { span { color: blue; } color: red;}
code-block.css:1:3 assist/source/useSortedProperties FIXABLE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ℹ The properties are not sorted.
> 1 │ p {
│ ^
> 2 │ span { color: blue; }
> 3 │ color: red;
> 4 │ }
│ ^
5 │
ℹ Safe fix: Sort these properties
1 1 │ p {
2 │ - ··span·{·color:·blue;·}
3 │ - ··color:·red;
2 │ + ··color:·red;
3 │ + ··span·{·color:·blue;·}
4 4 │ }
5 5 │
p { --custom: 100; display: block; margin: 8px; color: black; pointer-events: none; border: 1px solid black; transition: opacity 1s ease;}
p { color: red; span { color: blue; }}
How to configure
Section titled “How to configure”{ "assist": { "actions": { "source": { "useSortedProperties": "on" } } }}