mirror of
https://github.com/jquery/jquery.git
synced 2024-11-23 02:54:22 +00:00
Fix #11311. Percents not pixels for top/left/bottom/right. Closes gh-793.
This commit is contained in:
parent
04c06e6858
commit
d5e5ce5bd0
@ -16,6 +16,7 @@ var ralpha = /alpha\([^)]*\)/i,
|
|||||||
|
|
||||||
cssExpand = jQuery.cssExpand,
|
cssExpand = jQuery.cssExpand,
|
||||||
cssPrefixes = [ "Webkit", "O", "Moz", "ms" ],
|
cssPrefixes = [ "Webkit", "O", "Moz", "ms" ],
|
||||||
|
rposition = /^(top|right|bottom|left)$/,
|
||||||
|
|
||||||
curCSS;
|
curCSS;
|
||||||
|
|
||||||
@ -242,7 +243,9 @@ if ( document.defaultView && document.defaultView.getComputedStyle ) {
|
|||||||
|
|
||||||
// If we're not dealing with a regular pixel number
|
// If we're not dealing with a regular pixel number
|
||||||
// but a number that has a weird ending, we need to convert it to pixels
|
// but a number that has a weird ending, we need to convert it to pixels
|
||||||
if ( rnumnonpx.test( ret ) ) {
|
// but not position css attributes, as those are proportional to the parent element instead
|
||||||
|
// and we can't measure the parent instead because it might trigger a "stacking dolls" problem
|
||||||
|
if ( rnumnonpx.test( ret ) && !rposition.test( name ) ) {
|
||||||
|
|
||||||
// Remember the original values
|
// Remember the original values
|
||||||
left = style.left;
|
left = style.left;
|
||||||
|
@ -538,6 +538,12 @@ test("can't get background-position in IE<9, see #10796", function() {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test("percentage position properties in IE<9 should not be incorrectly transformed to pixels, see #11311", function() {
|
||||||
|
expect( 1 );
|
||||||
|
var div = jQuery("<div style='position: absolute; width: 1px; height: 20px; bottom:50%;'></div>").appendTo( "#qunit-fixture" );
|
||||||
|
ok( window.getComputedStyle || div.css( "bottom" ) === "50%", "position properties get incorrectly transformed in IE<8, see #11311" );
|
||||||
|
});
|
||||||
|
|
||||||
test("Do not append px to 'fill-opacity' #9548", 1, function() {
|
test("Do not append px to 'fill-opacity' #9548", 1, function() {
|
||||||
|
|
||||||
var $div = jQuery("<div>").appendTo("#qunit-fixture");
|
var $div = jQuery("<div>").appendTo("#qunit-fixture");
|
||||||
|
Loading…
Reference in New Issue
Block a user