Specify a list of allowed property and unit pairs within declarations.
a { width: 100px; }
/** ↑ ↑
* These properties and these units */
The message
secondary option can accept the arguments of this rule.
object
: { "unprefixed-property-name": ["array", "of", "units"]|"unit" }
If a property name is surrounded with "/"
(e.g. "/^animation/"
), it is interpreted as a regular expression. This allows, for example, easy targeting of shorthands: /^animation/
will match animation
, animation-duration
, animation-timing-function
, etc.
Given:
{
"font-size": ["em", "px"],
"/^animation/": "s",
"line-height": []
}
The following patterns are considered problems:
a { font-size: 1.2rem; }
a { animation: animation-name 500ms ease; }
a { -webkit-animation: animation-name 500ms ease; }
a { animation-duration: 500ms; }
a { line-height: 13px; }
The following patterns are not considered problems:
a { font-size: 1em; }
a { height: 100px; }
a { animation: animation-name 5s ease; }
a { -webkit-animation: animation-name 5s ease; }
a { animation-duration: 5s; }
a { line-height: 1; }
Ignore units that are inside a function.
For example, given:
[
{
"/^border/": ["px"],
"/^background/": ["%"]
},
{
"ignore": ["inside-function"]
}
]
The following patterns are not considered problems:
a {
border: 1px solid hsla(162deg, 51%, 35%, 0.8);
}
a {
background-image: linear-gradient(hsla(162deg, 51%, 35%, 0.8), hsla(62deg, 51%, 35%, 0.8));
}