Google Chrome開発ツールのクロススタイルプロパティはどういう意味ですか?


274

Chromeの開発ツールを使用して要素を検査しているとき、要素タブの右側の「スタイル」バーには、対応するCSSプロパティが表示されます。時には、これらのプロパティのいくつかは取り消し線が引かれています。これらのプロパティはどういう意味ですか?


4
私はこの質問を予想していました。+1。
Rajesh Paul 14

回答:


314

CSSプロパティが取り消し線として表示される場合、取り消し線が適用されたが、より具体的なセレクター、よりローカルなルール、または同じルール内の後のプロパティによってオーバーライドされたことを意味します。

(特殊なケース:一致するルールにスタイルが存在するが、コメントアウトされている場合、またはChromeデベロッパーツールでチェックボックスをオフにして手動で無効にした場合、スタイルは取り消し線としても表示されます。また、クロスとして表示されますアウト、ただしスタイルに構文エラーがある場合はエラーアイコン付き)

たとえば、背景色がすべてdivのに適用されたdivが、特定のIDを持つsに異なる背景色が適用された場合、最初の色が表示されますが、2番目の色がそれを置き換えたため、取り消し線が引かれます(プロパティ内)divそのIDを持つのリスト)。


18
余談ですが、取り消し線が引かれたプロパティは、同じCSSルールの後半にある同じ名前のプロパティによって「キャンセル」されたものになる可能性があります(CSS仕様に必要です)
Alexander Pavlov

57
@JacobM:ストライクされたプロパティをオーバーライドしているプロパティを知る方法。
ArunRaj 2014

51
@ArunRaj-取り消し線の付いたプロパティをオーバーライドしているプロパティを簡単に確認する方法はありません。1つのオプションは、「計算済み」スタイルのタブを調べて同じプロパティタイプを見つけ、展開すると、そのプロパティを適用しようとしているさまざまなルール(実際にアクティブなものを含む)のソースが表示されるはずです。 。したがって、「font-size:11px」に取り消し線が引かれている場合は、「font-size」の計算されたプロパティを確認すると、実際にアクティブな場所を含む、font-sizeが適用されているすべての場所が表示されます。お役に立てれば。
Jacob Mattison、2014

7
[スタイル]タブの上部にフィルターボックスがあります。何が上書きされているのか疑問に思っている場合は、フィルターにborder-color入力border-colorしてください。そのプロパティを含むすべてのルールが表示され、プロパティは黄色で強調表示されます。この機能はFirefoxでも利用できます。
joeytwiddle

4
また、追加したかったのですが、スタイルが取り消し線で表示されていても、そのスタイルがすでに一番上にある場合は、CSSスタイルが!important上書きされている可能性があります。
ドミニクK

12

余談です。使用している場合は@mediaのクエリを(など@media screen (max-width:500px))@mediaクエリを適用するに特に注意を払うAFTERあなたが通常のスタイルで行われます。@mediaクエリは、同じ要素を操作するcssが後に続く場合、(より具体的であっても)取り消されるためです。例:

@media (max-width:750px){
#buy-box {width: 300px;}
}

#buy-box{
width:500px;
}

** width will be 500px and 300px will be crossed out in Developer Tools. **

#buy-box{
width:500px;
}

@media (max-width:750px){
#buy-box {width: 300px;}
}

** width will be 300px and 500px will be crossed out **

メディアクエリが別のcssファイルにある場合はどうなりますか?
カルロスエルナンデスギル

11

上記の回答に加えて、私が本当に驚いたのは、取り消された資産のケースを強調することです。

divに背景画像を追加する場合:

<div class = "myBackground">

</div>

divのサイズに合うように画像をスケーリングしたいので、これが通常のクラス定義になります。

.myBackground {

 height:100px;
 width:100px;
 background: url("/img/bck/myImage.jpg") no-repeat; 
 background-size: contain;

}

しかし、次のように順序を入れ替えると:-

.myBackground {
 height:100px;
 width:100px;
 background-size: contain;  //before the background
 background: url("/img/bck/myImage.jpg") no-repeat; 
}

クロームでは、背景のサイズが取り消し線で表示されます。これがなぜなのかはわかりませんが、うんざりしたくありません。


8

打線表示を取得した後でもスタイルを適用したい場合は、を使用"!important"してスタイルを強制できます。それは正しい解決策ではないかもしれませんが、問題を解決します。


メディアでモバイル用のGoogleMapを拡大縮小するのに問題がありました。私はブラウザの基本設定(メディアなし)に続いて、サイズの小さいさまざまなメディアを続けていますが、うまくいきません(GCでモバイルの正しいスタイルが表示されていますが、取り消し線が付いています)。!importantを追加した後は機能しますが、その背後にある「ロジック」が理解できません...
FredyWenger

-5

CSSコードをコピーしてどこかに貼り付けると、フォーマットが壊れてChromeに黄色の警告が表示される場合があります。CSSコードを再フォーマットしてみてください。問題はありません。


2
質問は「黄色の警告」について何も尋ねませんでした。この答えはせいぜいコメントであるべきです。
Simon
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.