// If a hook was provided, use that value, otherwise just set the specified value
if ( !hooks || !("set" in hooks) || (value = hooks.set( elem, value, extra )) !== undefined ) {
- // Wrapped to prevent IE from throwing errors when 'invalid' values are provided
- // Fixes bug #5509
+ // Support: IE
+ // Swallow errors from 'invalid' CSS values (#5509)
try {
+ // Support: Chrome, Safari
+ // Setting style to blank string required to delete "style: x !important;"
+ style[ name ] = "";
style[ name ] = value;
} catch(e) {}
}
t( "Is Hidden", "#form input:hidden", ["hidden1","hidden2"] );
});
+test( "Override !important when changing styles (#14394)", function() {
+ expect( 1 );
+ var el = jQuery( "<div style='display: block !important;'></div>" ).css( "display", "none" );
+ equal( el.css( "display" ), "none", "New style replaced !important" );
+});
+
asyncTest( "Clearing a Cloned Element's Style Shouldn't Clear the Original Element's Style (#8908)", 24, function() {
var baseUrl = document.location.href.replace( /([^\/]*)$/, "" ),
styles = [{