diff --git a/src/css.js b/src/css.js index 6abcc956..ddd42b4b 100644 --- a/src/css.js +++ b/src/css.js @@ -167,7 +167,7 @@ jQuery.extend({ // Put in the new values to get a computed value out elem.runtimeStyle.left = elem.currentStyle.left; - style.left = ret || 0; + style.left = camelCase === "fontSize" ? "1em" : (ret || 0); ret = style.pixelLeft + "px"; // Revert the changed values @@ -212,4 +212,4 @@ if ( jQuery.expr && jQuery.expr.filters ) { jQuery.expr.filters.visible = function(elem){ return !jQuery.expr.filters.hidden(elem); }; -} \ No newline at end of file +} diff --git a/test/data/testsuite.css b/test/data/testsuite.css index 7a162431..5cc78282 100644 --- a/test/data/testsuite.css +++ b/test/data/testsuite.css @@ -103,3 +103,7 @@ div.chain.out { background: green; } div.chain.out div { background: red; display: none; } div#show-tests * { display: none; } + +#nothiddendiv { font-size: 16px; } +#nothiddendivchild.em { font-size: 2em; } +#nothiddendivchild.prct { font-size: 150%; } diff --git a/test/unit/css.js b/test/unit/css.js index 649db596..beac04a8 100644 --- a/test/unit/css.js +++ b/test/unit/css.js @@ -1,7 +1,7 @@ module("css"); test("css(String|Hash)", function() { - expect(23); + expect(27); equals( jQuery('#main').css("display"), 'none', 'Check for css property "display"'); @@ -38,6 +38,17 @@ test("css(String|Hash)", function() { equals( jQuery('#empty').css('opacity'), '0', "Assert opacity is accessible via filter property set in stylesheet in IE" ); jQuery('#empty').css({ opacity: '1' }); equals( jQuery('#empty').css('opacity'), '1', "Assert opacity is taken from style attribute when set vs stylesheet in IE with filters" ); + + var div = jQuery('#nothiddendiv'), child = jQuery('#nothiddendivchild'); + + equals( parseInt(div.css("fontSize")), 16, "Verify fontSize px set." ); + equals( parseInt(child.css("fontSize")), 16, "Verify fontSize px set." ); + + child.attr("class", "em"); + equals( parseInt(child.css("fontSize")), 32, "Verify fontSize em set." ); + + child.attr("class", "prct"); + equals( parseInt(child.css("fontSize")), 24, "Verify fontSize % set." ); }); test("css(String, Object)", function() {