1

Firefox プラグインからすべてのページに html + css を挿入しています。しかし、このスタイルはスタイルシートによって上書きされることがあります。この行為をやめさせたい。

これはいくつかのCSSトリックで解決できることを知っています。たとえば、追加!importantします。しかし、Firefox や xul でこれを簡単に行う方法はありますか?

4

3 に答える 3

1

単独で使用する!importantだけでは十分ではありません。Web ページで同じことを行い、スタイルをオーバーライドすることもできます。Stylesheet Service を使用して、ユーザー スタイルシートを登録できます。次に使用する!importantと、Web ページはスタイルをオーバーライドできなくなります。

ユーザー スタイルシートは常にグローバルであり、すべての Web ページとブラウザー独自の XUL ドキュメントに適用されることに注意してください。@-moz-documentを使用して、それらを特定の Web ページに制限できます。

于 2011-09-29T13:22:35.123 に答える
0

私にとって、これは確実に を使用する 1 つのケースです!important

とはいえ、スタイルが設定されていることを確認するために特異性を使用することができます。

そのため、特定されていないスタイルをオーバーライドするために、要素を可能な限り正確にターゲットにしていることを確認してください。

たとえば、この構造がある場合

<body>
    <div>
        <h1 class="something">
            <a href> 

サイトのスタイルは、

h1.something a{

これを目指せばいい

body div h1.something a{

これはより具体的で、上記のスタイルをオーバーライドします。

他にできることはappend、 の直前にスタイルを配置することです。これにより、スタイル</head>がカスケードの最後に表示され、それらが等しい場合に適用されます。

于 2011-09-29T12:59:14.417 に答える
0
#MEGA_PLUNGIN a {}
#MEGA_PLUNGIN span {}
#MEGA_PLUNGIN div {}
#MEGA_PLUNGIN table {}
...

最善の解決策ではありませんが、正しい...

于 2011-09-29T12:58:44.490 に答える