Make sure that non-px values aren't manipulated before input to height/width.
authorJohn Resig <jeresig@gmail.com>
Tue, 21 Sep 2010 21:12:42 +0000 (17:12 -0400)
committerJohn Resig <jeresig@gmail.com>
Tue, 21 Sep 2010 21:12:42 +0000 (17:12 -0400)
src/css.js
test/unit/css.js

index 84b6e60..69c4452 100644 (file)
@@ -155,7 +155,7 @@ jQuery.each(["height", "width"], function( i, name ) {
                },
 
                set: function( elem, value ) {
-                       if ( value !== "" ) {
+                       if ( rnumpx.test( value ) ) {
                                // ignore negative width and height values #1599
                                value = parseFloat(value);
 
index 99bab1f..0e91ae1 100644 (file)
@@ -1,7 +1,7 @@
 module("css");
 
 test("css(String|Hash)", function() {
-       expect(28);
+       expect(29);
 
        equals( jQuery('#main').css("display"), 'none', 'Check for css property "display"');
 
@@ -44,6 +44,9 @@ test("css(String|Hash)", function() {
        equals( parseInt(child.css("fontSize")), 16, "Verify fontSize px set." );
        equals( parseInt(child.css("font-size")), 16, "Verify fontSize px set." );
 
+       child.css("height", "100%");
+       equals( child[0].style.height, "100%", "Make sure the height is being set correctly." );
+
        child.attr("class", "em");
        equals( parseInt(child.css("fontSize")), 32, "Verify fontSize em set." );