mirror of
https://github.com/jquery/jquery.git
synced 2024-11-23 02:54:22 +00:00
Fix #14394: Changing style !important in webkit. Close gh-1385.
(cherry picked from commit 24e587929f
)
Conflicts:
src/css.js
This commit is contained in:
parent
1ceecf4c64
commit
a5063ee2a1
@ -292,9 +292,12 @@ jQuery.extend({
|
||||
// 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) {}
|
||||
}
|
||||
|
@ -970,6 +970,12 @@ test( ":visible/:hidden selectors", function() {
|
||||
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 = [{
|
||||
|
Loading…
Reference in New Issue
Block a user