Can I Use Jquery To Remove/negate Css !important Rule?
Solution 1:
Unfortunately, you cannot override !important
without using !important
as inline/internal style below the included theirs.css
.
You can define a !important
style and add it to .stubborn
then adjust the opacity.. See below,
CSS:
div.hidden_block_el {
display: block !important;
opacity: 0;
}
JS:
$('.stubborn')
.addClass('hidden_block_el')
.animate({opacity: 1});
DEMO:http://jsfiddle.net/jjWJT/1/
Alternate approach (inline),
$('.stubborn')
.attr('style', 'display: block !important; opacity: 0;')
.animate({opacity: 1});
Solution 2:
Just add a style=""
tag to any images with this issue, hopefully they all have some sort of defining class to them that it's easy to do so.
$('div.stubborn').attr('style', 'display: inline !important;');
Solution 3:
You need to create a new class to apply fade.
CSS:
div.stubborn { display: none !important; }
div.stubborn.fade-ready { display: block !important; opacity: 0; }
JS:
$('.stubborn').addClass('fade-ready').animate({opacity: 1}); //to show
$('.stubborn').fadeOut(function() {$(this).removeClass('fade-ready');}); //to hide
DEMO HERE
Solution 4:
you can add a new css style with the !important added to it that will override the original style
This is from another answer in javascript:
functionaddNewStyle(newStyle) {
var styleElement = document.getElementById('styles_js');
if (!styleElement) {
styleElement = document.createElement('style');
styleElement.type = 'text/css';
styleElement.id = 'styles_js';
document.getElementsByTagName('head')[0].appendChild(styleElement);
}
styleElement.appendChild(document.createTextNode(newStyle));
}
addNewStyle('td.EvenRow a {display:inline !important;}')
this answer is here
Also I believe that you can add styling like this
.css({ 'display' : 'block !important' });
in jQuery
Solution 5:
I have tried several methods, but the best results I've obtained by adding the CSS style (!important) in a separate class, then remove with jQuery:
CSS:
.important-css-here { display: block !important;}
In jQuery:
$("#selector").addClass("important-css-here");
then, when I need:
$("#selector").removeClass("important-css-here");
work like a charm ;-)
Post a Comment for "Can I Use Jquery To Remove/negate Css !important Rule?"