0

所有していないサイトのウィジェットを作成します。

HTML を挿入した後、次のようにしてウィジェットのスタイルを設定します。

var style = document.createElement('style'),
    stylesString = 'minified css with a prefix for each selector eg. .my-prefix p {... }',
    rules = document.createTextNode(stylesString);

style.type = 'text/css';
if(style.styleSheet) {
    style.styleSheet.cssText = rules.nodeValue;
} else {
    style.appendChild(rules);
}
document.getElementsByTagName('head')[0].appendChild(style);

しかし、一部のサイトでは私のスタイルが上書きされています。

スタイルをより正確に適用する方法はありますか?

使いたくない (使えない):

  • iFrame
  • !すべてのプロパティで重要
4

1 に答える 1

0

これは、問題の要素にインライン スタイルがあるか (スタイルを追加する現在の方法を使用する場合は、オーバーライドを使用する必要があります)、またはセレクターの優先順位!importantが高いスタイルを持っていることが原因である可能性があります。

私の提案は、セレクターに少なくとも を追加して、セレクターをより具体的にすることidです。これは、セレクターがまだ最も具体的であるという保証ではありません。元のサイトのスタイルシートの品質に完全に依存しています。

于 2012-04-10T08:22:34.193 に答える