1.0.1 • Published 4 years ago
@codebundlesbyvik/css-operations v1.0.1
css-operations
JavaScript helper functions for various CSS operations.
Installation
// Install package from npm
npm install @codebundlesbyvik/css-operations// Import the functions you need
import { getPropValue, motionAllowed } from "@codebundlesbyvik/css-operations";
// ... or, import the module in its entirety
import * as cssOps from "@codebundlesbyvik/css-operations";Functions
getPropValue(el, prop)
Retrieve an element's CSS property value.
If the given property is not set, null will be returned.
Parameters
* indicates required
- * 
el(Element): Target Element. - * 
prop(String): Property to retrieve. 
Example
const el = document.querySelector("#example-div-1");
// margin-bottom: 0.75rem;
// background-color: black;
getPropValue(el, "margin-bottom");
// > "0.75rem"
getPropValue(el, "background-color");
// > "black"
getPropValue(el, "non-existant");
// > ""getUnit(value)
Retrieve the unit of a quantitative CSS value.
If the given value has no unit, null will be returned.
Parameters
value(String): CSS value to get the unit from.
Example
getUnit("2px")
// > "px"
getUnit(".5ms")
// > "ms"
getUnit("100")
// > nullmotionAllowed()
Check prefers-reduced-motion. Returns a Boolean based on the result.
Parameters
- None
 
Example
// prefers-reduced-motion: no-preference OR unsupported
motionAllowed()
// > true
// prefers-reduced-motion: reduce
motionAllowed()
// > falsetimeToMs(time)
Convert CSS-style "unit-based time" value to a Number of milliseconds.
If the given value is unitless, it'll be returned as-is. If it has an unrecognized unit, the returned value will be null.
Parameters
time(String): CSS-style time duration (i.e.10s,5h,0.5d).
Recognized units
ms: Millisecondss: Secondsh: Hoursd: Daysw: Weeksy: Years - assumes 1 year = 365 days
Example
timeToMs("2s")
// > 2000
timeToMs("0.25d")
// > 21600000
timeToMs("-1w")
// > -604800000
timeToMs("1asdf")
// > null
timeToMs("20")
// > 20License
MIT © Viktor Chin-Kon-Sung