Skip to content

noDuplicateCustomProperties (CSS)

Language CSS
biome.json
{
"linter": {
"rules": {
"suspicious": {
"noDuplicateCustomProperties": "error"
}
}
}
}

Disallow duplicate custom properties within declaration blocks.

This rule checks the declaration blocks for duplicate custom properties.

Declarations are compared within each authored declaration block. The rule does not expand mixins or includes, so duplicates introduced only after SCSS expansion are not reported.

a { --custom-property: pink; --custom-property: orange; }
code-block.css:1:30 lint/suspicious/noDuplicateCustomProperties ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

✖ Duplicate custom properties can lead to unexpected behavior and may override previous declarations unintentionally.

> 1 │ a { --custom-property: pink; --custom-property: orange; }
│ ^^^^^^^^^^^^^^^^^
2 │

ℹ --custom-property is already defined here.

> 1 │ a { --custom-property: pink; --custom-property: orange; }
│ ^^^^^^^^^^^^^^^^^
2 │

ℹ Remove or rename the duplicate custom property to ensure consistent styling.

a { --custom-property: pink; background: orange; --custom-property: orange }
code-block.css:1:50 lint/suspicious/noDuplicateCustomProperties ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

✖ Duplicate custom properties can lead to unexpected behavior and may override previous declarations unintentionally.

> 1 │ a { --custom-property: pink; background: orange; --custom-property: orange }
│ ^^^^^^^^^^^^^^^^^
2 │

ℹ --custom-property is already defined here.

> 1 │ a { --custom-property: pink; background: orange; --custom-property: orange }
│ ^^^^^^^^^^^^^^^^^
2 │

ℹ Remove or rename the duplicate custom property to ensure consistent styling.

a { --custom-property: pink; }
a { --custom-property: pink; --cUstOm-prOpErtY: orange; }