Grundsätzlich habe ich zwei externe CSS auf meiner Seite.
Die erste Main.css
enthält alle Stilregeln, aber ich habe keinen Zugriff darauf und kann sie daher nicht ändern. Ich habe Zugriff auf eine zweite Datei Template.css
, daher muss ich die Main.css
Werte in überschreiben template.css
.
Dies ist einfach, für die ich den Wert ändern muss, aber wie entferne ich eine Eigenschaft vollständig?
Wie sagen , eine Klasse .c1
hat height: 40px;
, wie kann ich von dieser Höhe Eigentum loswerden?
Antworten:
Sie müssen jede einzelne Eigenschaft auf ihren Standardwert zurücksetzen. Es ist nicht großartig, aber es ist der einzige Weg, angesichts der Informationen, die Sie uns gegeben haben.
In Ihrem Beispiel würden Sie Folgendes tun:
Sie sollten hier nach jeder Immobilie suchen:
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference
Zum Beispiel
height
:Ein weiteres Beispiel
max-height
:Im Jahr 2017 gibt es jetzt einen anderen Weg, das
unset
Schlüsselwort:Einige Dokumentationen: https://developer.mozilla.org/en-US/docs/Web/CSS/unset
Die Browserunterstützung ist gut: http://caniuse.com/css-unset-value
quelle
Der
unset
Mehrwert in CSS3 löst auch dieses Problem und ist eine noch universellere Methode alsauto
oder,initial
weil für jede CSS-Eigenschaft der Standardwert und zusätzlich das Standardverhalten relativ zum übergeordneten Element festgelegt wird.Beachten Sie, dass der
initial
Wert das oben genannte Verhalten verletzt.Von MDN :
quelle
Das kannst du leider nicht. CSS hat keinen "Standard" -Platzhalter.
In diesem Fall würden Sie die Eigenschaft mit zurücksetzen
Wie @Ben richtig hervorhebt, ist dies in einigen Fällen
inherit
der richtige Weg, beispielsweise beim Zurücksetzen der Textfarbe einesa
Elements (diese Eigenschaft wird vom übergeordneten Element geerbt):quelle
initial
In CSS3 wird ein Schlüsselwort hinzugefügt, damit Autoren diesen Anfangswert explizit angeben können.quelle
height:initial;
Scheint in IE9 nicht zu funktionieren.initial
undauto
undunset
?Um die Eigenschaft mit fester Höhe zu entfernen, können Sie sie auf den Standardwert setzen:
quelle
Sie müssen einen Selektor mit einer höheren Spezifität als den in bereitstellen
Main.css
. Stellen Sie mit diesem Selektor die Werte der gewünschten Eigenschaften auf ihre Standardeinstellungen ein, zEs gibt keinen "Standard" -Wert, der für alle Eigenschaften funktioniert. Sie müssen den Standardwert für jede Eigenschaft nachschlagen und diesen verwenden.
quelle
Ich hatte ein Problem, das sich selbst beim Überschreiben von "height" auf "unset" oder "initial" anders verhielt als beim Entfernen der vorherigen Einstellung.
Es stellte sich heraus, dass ich auch die Eigenschaft min-height entfernen musste!
Bearbeiten: Ich habe auf IE 7 getestet und es erkennt nicht "nicht gesetzt", so dass "Auto" besser funktioniert ".
quelle