Kann mir jemand sagen, ob das folgende CSS gültig ist?
.class {
background-color:none;
}
background:none;
, was gültig ist und was die Hintergrundfarbe auf transparent setzt.
Kann mir jemand sagen, ob das folgende CSS gültig ist?
.class {
background-color:none;
}
background:none;
, was gültig ist und was die Hintergrundfarbe auf transparent setzt.
Antworten:
Sie möchten wahrscheinlich, transparent
da dies 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, Kastanienbraun, Marine, Oliv, Orange, Lila, Rot, Silber, Blaugrün, Weiß und Gelb
transparent
und inherit
sind selbst gültige Schlüsselwörter, aber none
nicht.
transparent
, verwenden Sie diesen Wert , wenn Sie die Hintergrundfärbung deaktivieren möchten.
color
nicht font-color
. Macht so viel Sinn, wann immer eine andere Schriftart font
vor sich hat ...
Nein, transparent
stattdessen verwenden none
. Sehen Sie sich das Arbeitsbeispiel hier in diesem Beispiel an, wenn Sie es ändern transparent
, none
funktioniert es nicht
benutze wie .class { background-color:transparent; }
Die Antwort ist nein.
.class {
background-color: none; /* do not do this */
}
.class {
background-color: transparent;
}
background-color: transparent
erreicht das gleiche, womit Sie es machen wollten background-color: none
.
.class {
background-color:none;
}
Dies ist keine gültige Eigenschaft. Der W3C-Validator zeigt folgenden Fehler an:
Wert Fehler: Hintergrundfarbe keine ist kein Hintergrundfarbenwert: keine
transparent
Möglicherweise wurde während der Entwicklung der CSS-Spezifikation ein besserer Begriff anstelle von 0
oder als none
Werte ausgewählt .
CSS Level 3 gibt den unset
Eigenschaftswert an. Von MDN :
Das nicht gesetzte CSS-Schlüsselwort ist die Kombination aus dem anfänglichen und dem geerbten Schlüsselwort. Wie diese beiden anderen CSS-weiten Schlüsselwörter kann es auf jede CSS-Eigenschaft angewendet werden, einschließlich der CSS-Kurzform all. Dieses Schlüsselwort setzt die Eigenschaft auf ihren geerbten Wert zurück, wenn sie von ihrem übergeordneten Wert erbt, oder auf ihren Anfangswert, wenn nicht. Mit anderen Worten, es verhält sich wie das ererbte Schlüsselwort im ersten Fall und wie das ursprüngliche Schlüsselwort im zweiten Fall.
Leider wird dieser Wert derzeit nicht in allen Browsern unterstützt, einschließlich IE, Safari und Opera. Ich schlage vor, transparent
vorerst zu verwenden.
Schreib Dies:
.class {
background-color:transparent;
}
Daher möchte ich das Szenario erläutern, in dem ich diese Lösung verwenden musste. Grundsätzlich wollte ich das von einem anderen CSS festgelegte Hintergrundfarbenattribut rückgängig machen. Das erwartete Endergebnis war, dass es so aussah, als hätte das ursprüngliche CSS das Hintergrundfarbenattribut nie angewendet. Die Einstellung background-color:transparent;
machte dies effektiv.