2016-08-05 12 views
1

私はこのようなクラスている:今、私はそれで上記のそれらのプロパティを除外したい、この要素クラスの名前を親のプロパティから除外するにはどうしたらいいですか?

li { 
    color: #ccc; 
    font-size: 12px; 
    position: fixed; 

    /* and some other properties */ 
} 

をしている:可能なことを

<li class="has_not_any_property"></li> 

をしているのですか?あなただけのドキュメント

からunset

を使用してinitalまたは継承した値を与えることができますCSS3をサポートしていない古いブラウザの場合

答えて

1

だけ:not property.A否定擬似クラスを使用

li :not(.has_not_any_property) { 
     color: #ccc; 
     font-size: 12px; 
     position: fixed; 
    } 

https://developer.mozilla.org/en-US/docs/Web/CSS/unset

このキーワードは、その親から を継承した場合は継承された値に、そうでない場合は初期値に継承されます。言い換えると、 は、最初のケースでは継承キーワードのように動作し、2番目のケースでは という初期キーワードのように動作します。

li.has_not_any_property { 
    color:unset; 
    position: unset 
    font-size: unset; 
} 
+0

をはい、これは正しい..ですが、実際に私のウェブサイトのユーザーのほとんどは 'IE8を使用します - ) '..そして、あなたが知っているように、CSS3をサポートしていません。とにかく..ありがとうございます。しかし、私は他の解決策を探しています。 –

1

CSS not擬似クラスを使用します。ここ

li:not(.has_not_any_property) { 
    color: #ccc; 
    font-size: 12px; 
    position: fixed; 
} 

ドキュメント:https://developer.mozilla.org/en-US/docs/Web/CSS/:not

+0

はい、これは正しいですが、実際には私のウェブサイトのユーザーのほとんどがIE8 ':-)'を使用しています..そして、あなたが知っているように、CSS3をサポートしていません...とにかく感謝しています。他のソリューションを探しています。 –

+0

@MartinAJああ、それは物事を変えます。 'li'要素のCSSブロックの後に、color、font-size、およびpositionのデフォルト値を復元する' .has_not_any_property'クラス専用のCSSブロックを書くことがあります。別のオプションは、除外されないすべての 'li'要素に対して異なるCSSクラスを追加し、既存のCSSをそのクラスに対してのみ設定変更することです。 –

関連する問題