modernizr
Version:
Modernizr is a JavaScript library that detects HTML5 and CSS3 features in the user’s browser.
44 lines (38 loc) • 1.4 kB
JavaScript
/*!
{
"name": "CSS Gradients",
"caniuse": "css-gradients",
"property": "cssgradients",
"tags": ["css"],
"notes": [{
"name": "Webkit Gradient Syntax",
"href": "http://webkit.org/blog/175/introducing-css-gradients/"
},{
"name": "Mozilla Linear Gradient Syntax",
"href": "http://developer.mozilla.org/en/CSS/-moz-linear-gradient"
},{
"name": "Mozilla Radial Gradient Syntax",
"href": "http://developer.mozilla.org/en/CSS/-moz-radial-gradient"
},{
"name": "W3C Gradient Spec",
"href": "dev.w3.org/csswg/css3-images/#gradients-"
}]
}
!*/
define(['Modernizr', 'prefixes', 'createElement'], function( Modernizr, prefixes, createElement ) {
Modernizr.addTest('cssgradients', function() {
var str1 = 'background-image:';
var str2 = 'gradient(linear,left top,right bottom,from(#9f9),to(white));';
var str3 = 'linear-gradient(left top,#9f9, white);';
var css =
// legacy webkit syntax (FIXME: remove when syntax not in use anymore)
(str1 + '-webkit- '.split(' ').join(str2 + str1) +
// standard syntax // trailing 'background-image:'
prefixes.join(str3 + str1)).slice(0, -str1.length);
var elem = createElement('div');
var style = elem.style;
style.cssText = css;
// IE6 returns undefined so cast to string
return ('' + style.backgroundImage).indexOf('gradient') > -1;
});
});