Kann mir jemand sagen, ob das folgende CSS gültig ist?
.class {
background-color:none;
}
Sie möchten transparent
wahrscheinlich, da none
kein gültiger background-color
-Wert ist.
Die CSS 2.1-Spezifikation gibt Folgendes für die background-color
-Eigenschaft an:
Value: <color> | transparent | inherit
<color>
kann entweder ein Schlüsselwort oder eine numerische Darstellung einer Farbe sein. Gültige color
Schlüsselwörter sind:
aqua, Schwarz, Blau, Fuchsia, Grau, Grün, Limette, Braun, Marine, Olive,. Orange, Lila, Rot, Silber, Aquamarin, Weiß und Gelb
transparent
und inherit
sind gültige Schlüsselwörter, none
jedoch nicht.
Nein, verwenden Sie transparent
statt none
. Siehe Arbeitsbeispiel hier in diesem Beispiel, wenn Sie transparent
in none
ändern, es funktioniert nicht
verwenden Sie wie .class { background-color:transparent; }
Die Antwort ist nein.
.class {
background-color: none; /* do not do this */
}
.class {
background-color: transparent;
}
background-color: transparent
bewirkt dasselbe, was Sie mit background-color: none
machen wollten.
.class {
background-color:none;
}
Dies ist keine gültige Eigenschaft. Der W3C-Prüfer zeigt den folgenden Fehler an:
Wertfehler: Hintergrundfarbe Keiner ist kein Hintergrundfarbwert: Keiner
Während der Entwicklung der CSS-Spezifikation wurde transparent
möglicherweise anstelle von 0
- oder none
-Werten als besserer Begriff ausgewählt.
CSS Level 3 gibt den Eigenschaftswert unset
an. Von MDN :
Das unset-Schlüsselwort CSS setzt sich aus der Kombination aus Anfangs- und Vererbung Schlüsselwörter. Wie diese beiden anderen CSS-weiten Schlüsselwörter kann es auch auf .__ angewendet werden. jede CSS-Eigenschaft, einschließlich der CSS-Kurzform all. Dieses Schlüsselwort setzt .__ zurück. die Eigenschaft auf ihren geerbten Wert, wenn sie von ihrem übergeordneten Element oder .__ erbt. wenn nicht. Mit anderen Worten verhält es sich wie erben Sie das Schlüsselwort im ersten Fall und wie das ursprüngliche Schlüsselwort in der zweiter Fall.
Leider wird dieser Wert derzeit nicht in allen Browsern unterstützt, einschließlich IE, Safari und Opera. Ich empfehle vorerst transparent
.
schreib Dies:
.class {
background-color:transparent;
}
Ich möchte also das Szenario erläutern, in dem ich von dieser Lösung Gebrauch machen musste. Grundsätzlich wollte ich das Hintergrundfarben-Attribut eines anderen CSS rückgängig machen. Das erwartete Endergebnis bestand darin, dass es so aussah, als hätte das ursprüngliche CSS das Attribut background-color nie angewendet. Durch die Einstellung von background-color:transparent;
wurde dies wirksam.