An object of CSS properties that don't accept values with units
92
Quality
Pending
Does it follow best practices?
Impact
92%
0.92xAverage score across 7 eval scenarios
A utility that formats numeric CSS style values by automatically adding 'px' units where appropriate, based on which CSS properties require units and which accept unitless numbers.
flex: 1, flexGrow: 2, and flexShrink: 0.5, returns each value as-is without adding units @testgridRow: 2, gridColumn: 3, and gridRowSpan: 2, returns each value as-is without adding units @testfontWeight: 700 and lineHeight: 1.5, returns each value as-is without adding units @testfontSize: 16, adds 'px' unit to produce "16px" @testopacity: 0.8, fillOpacity: 0.5, and strokeOpacity: 0.3, returns each value as-is without adding units @testwidth: 200, height: 100, padding: 10, and margin: 20, adds 'px' units to each value @testzIndex: 999 and order: 5, returns each value as-is without adding units @testanimationIterationCount: 3 and aspectRatio: 1.5, returns each value as-is without adding units @test@generates
/**
* Formats CSS style values by adding 'px' units to numeric values
* for properties that require units, while leaving unitless properties unchanged.
* Non-numeric values (strings) are returned as-is.
*
* @param {Object} styles - An object containing CSS property names as keys and their values (numbers or strings)
* @returns {Object} A new object with formatted values (numbers converted to strings, with 'px' added where needed)
*/
function formatStyles(styles) {
// IMPLEMENTATION HERE
}
module.exports = { formatStyles };Provides information about which CSS properties accept unitless numeric values.
Install with Tessl CLI
npx tessl i tessl/npm-emotion--unitless