Skip to content
Permalink
Browse files

Landing pull request 413. Move border/padding checks to after width v…

…alidation to avoid unnecessary fallbacks. Fixes #9598.

More Details:
 - #413
 - http://bugs.jquery.com/ticket/9300
 - http://bugs.jquery.com/ticket/9441
 - http://bugs.jquery.com/ticket/9598
  • Loading branch information...
mikesherov authored and timmywil committed Jun 17, 2011
1 parent d59b0f3 commit 124817e6684086ccf74e509309b73d4b4dd89932
Showing with 10 additions and 11 deletions.
  1. +10 −11 src/css.js
@@ -315,21 +315,20 @@ function getWH( elem, name, extra ) {
var val = name === "width" ? elem.offsetWidth : elem.offsetHeight,
which = name === "width" ? cssWidth : cssHeight;

if ( extra !== "margin" && extra !== "border" ) {
jQuery.each( which, function() {
val -= parseFloat( jQuery.css( elem, "border" + this + "Width" ) ) || 0;
if ( !extra ) {
val -= parseFloat( jQuery.css( elem, "padding" + this ) ) || 0;
}
});
}

if ( val > 0 ) {
if ( extra === "margin" ) {
if ( extra !== "border" ) {
jQuery.each( which, function() {
val += parseFloat( jQuery.css( elem, extra + this ) ) || 0;
if ( !extra ) {
val -= parseFloat( jQuery.css( elem, "padding" + this ) ) || 0;
}
if ( extra === "margin" ) {
val += parseFloat( jQuery.css( elem, extra + this ) ) || 0;
} else {
val -= parseFloat( jQuery.css( elem, "border" + this + "Width" ) ) || 0;
}
});
}

return val + "px";
}

0 comments on commit 124817e

Please sign in to comment.
You can’t perform that action at this time.