Checks that the argument is valid for use as a CSS unit of length.




The unit to validate. Will be treated as a number of pixels if a unit is not specified.


A properly formatted CSS unit of length, if possible. Otherwise, will throw an error.


NULL and NA are returned unchanged.

Single element numeric vectors are returned as a character vector with the number plus a suffix of "px".

Single element character vectors must be "auto", "fit-content" or "inherit", a number, or a length calculated by the "calc" CSS function. If the number has a suffix, it must be valid: px, \%, ch, em, rem, pt, in, cm, mm, ex, pc, vh, vw, vmin, or vmax. If the number has no suffix, the suffix "px" is appended.

Any other value will cause an error to be thrown.


#> [1] "10%"
validateCssUnit(400)  #treated as '400px'
#> [1] "400px"