web-dev-qa-db-ja.com

Background-color:noneは有効なCSSですか?

次のCSSが有効かどうか誰かに教えてもらえますか?

.class {
    background-color:none;
}
356
NarfkX

transparentは有効なbackground-color値ではないため、おそらくnoneが必要です。

CSS 2.1仕様 は、background-colorプロパティについて次のように述べています。

Value: <color> | transparent | inherit

<color>は、キーワードまたは色の数値表現のいずれかです。 有効なcolorキーワード は次のとおりです。

アクア、ブラック、ブルー、フクシア、グレー、グリーン、ライム、マルーン、ネイビー、オリーブ、オレンジ、パープル、レッド、シルバー、ティール、ホワイト、イエロー

transparentinheritはそれ自体有効なキーワードですが、noneは無効です。

457
James Allardice

答えはノーだ。

間違っている

.class {
    background-color: none; /* do not do this */
}

正しい

.class {
    background-color: transparent;
}

background-color: transparentは、background-color: noneを使ってやりたいことと同じことを実現します。

56
Sajidur Rahman
.class {
    background-color:none;
}

これは有効なプロパティではありません。 W3Cバリデータは以下のエラーを表示します。

値エラー:background-color noneはbackground-colorの値ではありません:none

CSSの仕様の開発において、transparent0またはnoneの値ではなく、より適切な用語として選択されている可能性があります。

6
Barun

CSSレベル3はunsetプロパティ値を指定します。 _ mdn _ から:

Unset CSSキーワードは、initialキーワードとinheritキーワードの組み合わせです。これら2つの他のCSS全体のキーワードと同様に、CSSの短縮形を含むすべてのCSSプロパティに適用できます。このキーワードは、親から継承した場合はプロパティを継承した値に、継承しなかった場合は初期値にリセットします。つまり、前者の場合はinheritキーワードのように、後者の場合は初期キーワードのように動作します。

残念ながら、この値は現在IE、Safari、Operaを含むすべてのブラウザでサポートされているわけではありません。とりあえずtransparentを使うことをお勧めします。

4
Gert Hengeveld

これを書く:

.class {
background-color:transparent;
}
1

それで、私は私がこの解決策を利用しなければならなかったシナリオを説明したいです。基本的に、私は他のCSSによって設定されたbackground-color属性を元に戻したいと思いました。期待される最終結果は、元のCSSがbackground-color属性を適用したことがないように見せることでした。 background-color:transparent;を設定すると有効になります。

0
Binita Bharati