2017-09-07 12 views
1

は、私は次のCSS持っていると言うより特定のクラスのためには何もありません:CSSの特異性 -

.InfoTable-main-table tbody tr td:before{ 
    background: #222; 
    color: #fff; 
    content: attr(title); 
    display: block; 
    left: 0; 
    padding: .25em .5em; 
    position: absolute; 
    top: 0; 
    width: auto; 
    } 

を私はより具体的なCSSはしかしそのすなわち

.InfoTable-main-table tbody tr td.extra:before{ 

    } 

のどれを持っていないしたい、前回CSSはまだ適用されます。より一般的なCSSを無視する方法はありますか?それとも、代わりに特定のクラスに適用するだけに格下げする必要がありますか?

+0

特異性は特定のスタイルにのみ影響します。両方のセレクタにスタイルが表示されている場合は、より特異性の高いセレクタにそのスタイルが適用されます。 – Li357

+1

Clarifying: '.extra'クラスを持たない表のセル(td)に最初のスタイルブロックを適用しますか?前に ':not()'セレクタに遭遇しましたか? '.InfoTable-main-table tbody tr td:not(.extra):before'(https://developer.mozilla.org/en-US/docs/Web/CSS/:not) – stealththeninja

+0

@stealththeninjaはい、しかし私方法があるかどうか疑問に思っていました。後でCSSを追加したいのですが、今は空白にしたいだけです。好奇心の強い質問のちょっとだけ。 –

答えて

-1

を使用でき、重要なpropertiveこのようなCSSの後に:!と仮定すると、

.InfoTable-main-table tbody tr td.extra:before{ 
     left: 100px!important; 
    } 
2

あなたはで「余分な」クラスとスタイルせずにテーブルのセルに適用されるスタイルセットを求めていることクラスは、:not()セレクターは良いフィット感のようです:

.InfoTable-main-table tbody tr td:not(.extra):before{ 
    background: #222; 
    ... 
} 

.InfoTable-main-table tbody tr td.extra:before{ 

} 
関連する問題