CSSStyleDeclaration
style.prop()
// โญ๏ธ style.prop(propName[,val])
//
// get:
// โข style.paddingLeft // get DOM style prop
// โข style.prop('padding-left') // get CSS prop โญ๏ธ
// โข style.prop('--css-var') // get CSS var โญ๏ธ
//
// set:
// โข style.prop('padding-left', '8px') // set CSS prop โญ๏ธ
// โข style.prop('--css-var', '4px') // set CSS var โญ๏ธ
// โข style.paddingLeft = '8px' // set DOM style prop
CSSStyleDeclaration.prototype.prop = function(propName, val=undefined){
const camelCase = !propName.includes('-');
// set prop if necessary
if (val) {
if (camelCase) this[propName] = val; // this.propName = val
else this.setProperty(propName, val);// this.setProp('prop-name', val)
}
// return prop value
return camelCase
? this[propName] // this.propName
: this.getPropertyValue(propName); // this.getProp('prop-name')
};
// โญ๏ธ style.prop(propName[,val])
//
// get:
// โข style.paddingLeft // get DOM style prop
// โข prop(style, 'padding-left') // get CSS prop โญ๏ธ
// โข prop(style, '--css-var') // get CSS var โญ๏ธ
//
// set:
// โข prop(style, 'padding-left', '8px') // set CSS prop โญ๏ธ
// โข prop(style, '--css-var', '4px') // set CSS var โญ๏ธ
// โข style.paddingLeft = '8px' // set DOM style prop
function prop(style, propName, val=undefined){
const camelCase = !propName.includes('-');
// set prop if necessary
if (val) {
if (camelCase) style[propName] = val; // style.propName = val
else style.setProperty(propName, val);// style.setProp('prop-name', val)
}
// return prop value
return camelCase
? style[propName] // style.propName
: style.getPropertyValue(propName); // style.getProp('prop-name')
};
MDN โฉ CSSStyleDeclaration
Element โฉ .styleProp()
CSS โฉ get/set props
global prop()โญ๏ธ Fav
Last updated