Skip to main content

number-max-precision

Limit the number of decimal places allowed in numbers.

a { top: 3.245634px; }
/** ↑
* This decimal place */

The message secondary option can accept the arguments of this rule.

Options

int: Maximum number of decimal places allowed.

For example, with 2:

The following patterns are considered problems:

a { top: 3.245px; }
a { top: 3.245634px; }
@media (min-width: 3.234em) {}

The following patterns are not considered problems:

a { top: 3.24px; }
@media (min-width: 3.23em) {}

Optional secondary options

ignoreProperties: ["/regex/", /regex/, "string"]

Ignore the precision of numbers for the specified properties.

For example, with 0.

Given:

["transition"]

The following patterns are considered problems:

a { top: 10.5px; }

The following patterns are not considered problems:

a { transition: all 4.5s ease; }

ignoreUnits: ["/regex/", /regex/, "string"]

Ignore the precision of numbers for values with the specified units.

For example, with 2.

Given:

["/^my-/", "%"]

The following patterns are considered problems:

a { top: 3.245px; }
a { top: 3.245634px; }
@media (min-width: 3.234em) {}

The following patterns are not considered problems:

a { top: 3.245%; }
@media (min-width: 3.23em) {}
a {
width: 10.5432%;
}
a { top: 3.245my-unit; }
a {
width: 10.989my-other-unit;
}

insideFunctions: {"/regex/": int, /regex/: int, "string": int}

The insideFunctions option can change a primary option value for specified functions.

For example, with 2.

Given:

{"/^(oklch|oklab|lch|lab)$/", 4}

The following patterns are considered problems:

a { color: rgb(127.333 0 0); }
a { color: rgb(calc(127.333 / 3) 0 0); }

The following patterns are not considered problems:

a { color: oklch(0.333 0 0); }
a { color: lab(0.3333 0 0); }
a { color: oklab(calc(127.333 / 3) 0 0); }