/pack-rat/003_pack_rat/pack-rat/node_modules/jquery/src/css/support.js |
@@ -0,0 +1,89 @@ |
define( [ |
"../core", |
"../var/document", |
"../var/documentElement", |
"../var/support" |
], function( jQuery, document, documentElement, support ) { |
|
"use strict"; |
|
( function() { |
|
// Executing both pixelPosition & boxSizingReliable tests require only one layout |
// so they're executed at the same time to save the second computation. |
function computeStyleTests() { |
|
// This is a singleton, we need to execute it only once |
if ( !div ) { |
return; |
} |
|
div.style.cssText = |
"box-sizing:border-box;" + |
"position:relative;display:block;" + |
"margin:auto;border:1px;padding:1px;" + |
"top:1%;width:50%"; |
div.innerHTML = ""; |
documentElement.appendChild( container ); |
|
var divStyle = window.getComputedStyle( div ); |
pixelPositionVal = divStyle.top !== "1%"; |
|
// Support: Android 4.0 - 4.3 only, Firefox <=3 - 44 |
reliableMarginLeftVal = divStyle.marginLeft === "2px"; |
boxSizingReliableVal = divStyle.width === "4px"; |
|
// Support: Android 4.0 - 4.3 only |
// Some styles come back with percentage values, even though they shouldn't |
div.style.marginRight = "50%"; |
pixelMarginRightVal = divStyle.marginRight === "4px"; |
|
documentElement.removeChild( container ); |
|
// Nullify the div so it wouldn't be stored in the memory and |
// it will also be a sign that checks already performed |
div = null; |
} |
|
var pixelPositionVal, boxSizingReliableVal, pixelMarginRightVal, reliableMarginLeftVal, |
container = document.createElement( "div" ), |
div = document.createElement( "div" ); |
|
// Finish early in limited (non-browser) environments |
if ( !div.style ) { |
return; |
} |
|
// Support: IE <=9 - 11 only |
// Style of cloned element affects source element cloned (#8908) |
div.style.backgroundClip = "content-box"; |
div.cloneNode( true ).style.backgroundClip = ""; |
support.clearCloneStyle = div.style.backgroundClip === "content-box"; |
|
container.style.cssText = "border:0;width:8px;height:0;top:0;left:-9999px;" + |
"padding:0;margin-top:1px;position:absolute"; |
container.appendChild( div ); |
|
jQuery.extend( support, { |
pixelPosition: function() { |
computeStyleTests(); |
return pixelPositionVal; |
}, |
boxSizingReliable: function() { |
computeStyleTests(); |
return boxSizingReliableVal; |
}, |
pixelMarginRight: function() { |
computeStyleTests(); |
return pixelMarginRightVal; |
}, |
reliableMarginLeft: function() { |
computeStyleTests(); |
return reliableMarginLeftVal; |
} |
} ); |
} )(); |
|
return support; |
|
} ); |