/*! { "name": "CSS Columns", "property": "csscolumns", "caniuse": "multicolumn", "polyfills": ["css3multicolumnjs"], "tags": ["css"] } !*/ define(['Modernizr', 'testAllProps'], function(Modernizr, testAllProps) { (function() { Modernizr.addTest('csscolumns', function() { var bool = false; var test = testAllProps('columnCount'); try { bool = !!test; if (bool) { bool = new Boolean(bool); } } catch (e) {} return bool; }); var props = ['Width', 'Span', 'Fill', 'Gap', 'Rule', 'RuleColor', 'RuleStyle', 'RuleWidth', 'BreakBefore', 'BreakAfter', 'BreakInside']; var name, test; for (var i = 0; i < props.length; i++) { name = props[i].toLowerCase(); test = testAllProps('column' + props[i]); // break-before, break-after & break-inside are not "column"-prefixed in spec if (name === 'breakbefore' || name === 'breakafter' || name === 'breakinside') { test = test || testAllProps(props[i]); } Modernizr.addTest('csscolumns.' + name, test); } })(); });