90

ページビルダーからのHTMLページがありstyle、要素に直接属性を挿入します。と見なされていることがわかりましたelement.style

CSSを使用してオーバーライドしたい。要素を一致させることはできますが、オーバーライドしません。

スクリーンショット

CSSを使用してスタイルをオーバーライドするにはどうすればよいですか?

4

8 に答える 8

133

眉をひそめることがよくありますが、技術的には次のものを使用できます。

display: inline !important;

一般的には良い習慣ではありませんが、場合によっては必要になることもあります。<li>そもそも要素にスタイルを適用しないようにコードを編集する必要があります。

于 2013-02-16T13:07:17.783 に答える
21

このCSSはJavaScriptも上書きします:

#demofour li[style] {
    display: inline !important;
} 

または最初の1つだけ

#demofour li[style]:first-child {
    display: inline !important;
}
于 2014-04-16T06:50:21.510 に答える
12

element.styleマークアップから来ています。

<li style="display: none;">

styleHTMLから属性を削除するだけです。

于 2013-02-16T13:07:33.980 に答える
6

もちろん、ここでは!importantトリックが決定的ですが、より具体的にターゲティングすると、オーバーライドを実際に適用するだけでなく(重み基準で!importantを支配できます)、意図しない要素をオーバーライドしないようにすることもできます。

ブラウザの開発ツールを使用して、問題のあるスタイル属性の正確な値を特定します。例えば:

"font-family: arial, helvetica, sans-serif;"

また

"display: block;"

次に、オーバーライドするセレクターのブランチを決定します。ニーズに合わせて選択肢を広げたり狭めたりすることができます。例:

p span

また

section.article-into.clearfix p span

最後に、custom.cssで、[attribute ^ = value]セレクターと!important宣言を使用します。

p span[style^="font-family: arial"] {
  font-family: "Times New Roman", Times, serif !important;
}

文字列と明確に一致するのに十分なだけ、スタイル属性値全体を引用する必要はないことに注意してください。

于 2016-04-08T17:40:07.930 に答える
5

!importantを使用すると、ChangeなどのCSSを介してelement.styleがオーバーライドされます

color: #7D7D7D;

color: #7D7D7D !important;

それはそれをする必要があります。

于 2013-08-13T06:27:26.360 に答える
1

要素スタイルの問題のあるプロパティを参照することで、cssのスタイルをオーバーライドできます。私の場合、これら2つのコードは15pxに設定されており、背景画像が黒くなります。だから、私はそれらを0pxでオーバーライドし、!importantを配置して、それが優先されるようにします

.content {
    border-bottom-left-radius: 0px !important;
     border-bottom-right-radius: 0px !important;
}
于 2018-03-07T19:38:49.040 に答える
0

私の知識によると、インラインスタイルが最初に来るので、cssクラスは機能しないはずです。

Jqueryを次のように使用します

$(document).ready(function(){
   $("#demoFour li").css("display","inline");
});

また、試すことができます

#demoFour li { display:inline !important;}
于 2013-02-16T13:10:00.000 に答える
0

JavaScriptを使用します。

例えば:

var elements = document.getElementById("demoFour").getElementsByTagName("li");
for (var i = 0; i < elements.length; i++) {
    elements[i].style.display = "inline";
}
于 2013-02-16T13:31:46.907 に答える