X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=src%2Fcss.js;h=88c4ffa05a8933ce971f381d33da4f8113ddff5f;hb=7e02cee5ff8b5e9117366d7b43af7b5794f0f258;hp=caf4985d2f5811f970bb4b19c41d01589b4e9a7b;hpb=2ae872c594790c4b935a1d7eabdf8b8212fd3c3f;p=jquery.git diff --git a/src/css.js b/src/css.js index caf4985..88c4ffa 100644 --- a/src/css.js +++ b/src/css.js @@ -169,7 +169,23 @@ jQuery.each(["height", "width"], function( i, name ) { }); } - return val + "px"; + if ( val < 0 ) { + return elem.style[ name ] || "0px"; + } + + if ( val === 0 ) { + val = curCSS( elem, name, name ); + + if ( val != null ) { + return val; + } + } + + if ( val < 0 || val == null ) { + return elem.style[ name ]; + } + + return typeof val === "string" ? val : val + "px"; } }, @@ -230,6 +246,9 @@ if ( getComputedStyle ) { if ( (computedStyle = defaultView.getComputedStyle( elem, null )) ) { ret = computedStyle.getPropertyValue( name ); + if ( ret === "" && !jQuery.contains( elem.ownerDocument.documentElement, elem ) ) { + ret = jQuery.style( elem, name ); + } } return ret; @@ -289,14 +308,9 @@ function getWH( elem, name, extra ) { if ( jQuery.expr && jQuery.expr.filters ) { jQuery.expr.filters.hidden = function( elem ) { - var width = elem.offsetWidth, height = elem.offsetHeight, - skip = elem.nodeName.toLowerCase() === "tr"; - - return width === 0 && height === 0 && !skip ? - true : - width > 0 && height > 0 && !skip ? - false : - (elem.style.display || jQuery.css( elem, "display" )) === "none"; + var width = elem.offsetWidth, height = elem.offsetHeight; + + return (width === 0 && height === 0) || (!jQuery.support.reliableHiddenOffsets && (elem.style.display || jQuery.css( elem, "display" )) === "none"); }; jQuery.expr.filters.visible = function( elem ) {