Make sure that accessing computed CSS for elements returns 'auto' instead of '' consistently. Fixes #7337.

This commit is contained in:
jeresig 2010-11-01 19:04:59 -04:00
parent e377621eaf
commit 9d1bfeb7ff
2 changed files with 7 additions and 6 deletions

View file

@ -173,12 +173,13 @@ jQuery.each(["height", "width"], function( i, name ) {
val = curCSS( elem, name, name ); val = curCSS( elem, name, name );
if ( val != null ) { if ( val != null ) {
return val === "auto" ? "" : val; return val;
} }
} }
if ( val < 0 || val == null ) { if ( val < 0 || val == null ) {
return elem.style[ name ]; val = elem.style[ name ];
return val === "" ? "auto" : val;
} }
return typeof val === "string" ? val : val + "px"; return typeof val === "string" ? val : val + "px";
@ -247,7 +248,7 @@ if ( getComputedStyle ) {
} }
} }
return ret; return ret === "" ? "auto" : ret;
}; };
} else if ( document.documentElement.currentStyle ) { } else if ( document.documentElement.currentStyle ) {
@ -274,7 +275,7 @@ if ( getComputedStyle ) {
elem.runtimeStyle.left = rsLeft; elem.runtimeStyle.left = rsLeft;
} }
return ret; return ret === "" ? "auto" : ret;
}; };
} }

View file

@ -13,8 +13,8 @@ test("css(String|Hash)", function() {
var div = jQuery( "<div>" ); var div = jQuery( "<div>" );
equals( div.css("width"), "", "Width on disconnected node." ); equals( div.css("width"), "auto", "Width on disconnected node." );
equals( div.css("height"), "", "Height on disconnected node." ); equals( div.css("height"), "auto", "Height on disconnected node." );
div.css({ width: 4, height: 4 }); div.css({ width: 4, height: 4 });