jsunconf 2014, 2014-04-26
el.style.property = 'value';
style='property: value;'`
getComputedStyle(el).property
#foo { color: red; }
document.styleSheets
Stylesheets
#foo { color: red; }
var el = document.getElementById('foo');
console.log( el.style.color ); // ''
console.log( getComputedStyle(el).color ); // 'red'
el.style.color = 'blue';
console.log( el.style.color ); // blue
console.log( getComputedStyle(el).color ); // 'blue'
el.style.color = '';
console.log( getComputedStyle(el).color ); // 'red'
border-bottom-right-radius
borderBottomRightRadius
camelize
and dasherize
from Prototype.js, underscore.string, …Experimental implementations
-moz-transform: scale(2);
-webkit-transform: scale(2);
-ms-transform: scale(2);
transform: scale(2);
el.style.MozTransform
el.style.WebkitTransform
el.style.msTransform // Yes
el.style.transform
var supported = Modernizr.testProp('someProperty');
var supported = Modernizr.testAllProps('someProperty')
CSS.supports(property, value)
else@supports
rule elseCSS.supports(property, value)
var supported = CSS.supports(property, value);
style
element, append it to the head
@supports
rule with a normal rule that styles an element in the DOM
@supports (transform-style: preserve-3d) {
#test-element { position: absolute; }
}
var supported = getComputedStyle(el).position === 'absolute';
'property' in el.style
el.style.property = 'value';
var supported = el.style.property === 'valueToTest';