(これは、Chrome 拡張機能でコンテンツ スクリプトを使用しています)
Web ページでラベルが付けられているいくつかの css プロパティを上書きする必要があります!important
。これは可能ですか?
たとえば、重要とラベル付けされた境界線を取り除きたい場合:
$(".someclass").css('border','none'); //does not work
(これは、Chrome 拡張機能でコンテンツ スクリプトを使用しています)
Web ページでラベルが付けられているいくつかの css プロパティを上書きする必要があります!important
。これは可能ですか?
たとえば、重要とラベル付けされた境界線を取り除きたい場合:
$(".someclass").css('border','none'); //does not work
どうぞ:
$( '.someclass' ).each(function () {
this.style.setProperty( 'border', 'none', 'important' );
});
ライブデモ: http://jsfiddle.net/Gtr54/
.setProperty
要素のオブジェクトのメソッドによりstyle
、優先度を表す 3 番目の引数を渡すことができます。したがって、!important 値を独自の !important 値でオーバーライドしています。私の知る限り、jQuery で !important の優先度を設定することはできないため、唯一のオプションは組み込み.setProperty
メソッドです。
これを行うこともできます:
$(".someclass").css("cssText", "border: none !important;");
これは役立つはずです。
$(".someclass").attr("style","border:none!important");
すべてのスタイルを上書きしないように更新:
var existingStyles = $(".someclass").attr("style");
$(".someclass").attr("style", existingStyles+"border:none!important");
別の方法もあります
$("#m_divList tbody").find("tr[data-uid=" + row.uid + "]").find('td').css("cssText", "color: red !important;");
css("cssText", "色: 赤!重要;");