Es gibt eine div
zum Beispiel. Wenn der Wert width
mithilfe von JavaScript als value1
definiert ist und derselbe Breitenwert in CSS als value2
(value1 != value2
) definiert ist, welchen Wert erhält div
am Ende für den width
?CSS/JavaScript. Geben Sie dem gleichen Attribut einen Wert
Antwort
Die Frage ist unklar, aber Stil Eigenschaften definiert auf das Element selbst (zB in seinem style
Attribut oder über die style
Eigenschaft überschreiben, die ist eine strukturierte Reflexion dieses Attributs), aka "Inline-Styles", haben Vorrang vor CSS-Regeln , es sei denn diese CSS-Regeln sind markiert !important
. Wenn der Inline-Stil auch!important
hat, gewinnt es. (Beachten Sie, dass Sie nicht !important
Regeln über die Eigenschaften auf der style
strukturierten reflektiert Eigenschaft können, müssen Sie entweder auf das Attribut oder setzen Sie die cssText
Eigenschaft der Unterkunft bis vollständig die Inline-Stil zu ersetzen.)
So:
document.querySelector(".ex1").style.width = "200px";
document.querySelector(".ex2").style.width = "200px";
document.querySelector(".ex3").setAttribute("style", "width: 200px !important");
div {
border: 1px solid #ddd;
}
.ex1 {
width: 300px;
}
.ex2 {
width: 300px !important;
}
.ex3 {
width: 300px !important;
}
<div class="ex1">200px (inline wins)</div>
<div class="ex2">300px (CSS wins)</div>
<div class="ex3">200px (inline wins again)</div>
Sie können sich Specificity von CSS anschauen.
Wenn Sie Javascript verwenden, wird der Stil als Inline-Stil hinzugefügt, es sei denn, Sie fügen ihn als Klasse hinzu.
Inline-Styles hinzugefügt, um ein Element (zum Beispiel style = "font-weight: bold") immer alle möglichen Arten in externen Stylesheets überschreiben und somit Gedanken an sein als die höchste Spezifität.
So definierten Wert js verwendet, wird der Wert definiert in CSS-Datei
Wie CSS in Kaskade gilt, wird es davon abhängen, welches Element Sie das letzte Mal geladen werden.
Javascript hinzufügen Stil zu Element als Inline-und Inline-Stil hat höhere Priorität als css.So, Javascript definierte Eigenschaften (Breite) sind für div anwendbar. Aber wenn Sie "! Wichtig" in css als div definiert haben, legen Sie die Eigenschaften gemäß css fest.
die unter Demo:
Datei demo.css Erstellen und unter Code einfügen:
#test1{
background-color: green;
width: 100px ;
}
#test2{
background-color: green;
width: 100px !important;
}
html-Datei erstellen und unter Code einfügen:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" type="text/css" href="demo.css">
</head>
<body>
<div id="test1">
test1
</div>
<div id="test2">
test2
</div>
</body>
<script>
document.getElementById("test1").style.width="200px";
document.getElementById("test2").style.width="200px";
</script>
</html>
- 1. So weisen Sie dem Attribut in angularjs einen Wert zu
- 2. Geben Sie einen Wert von Sequelize Abfrage
- 3. Geben Sie einem Klassenobjekt einen Wert C#
- 4. den Wert Attribut in geben (click) Attribut in HTML-Tag
- 5. FMDatabaseQueue So geben Sie einen Wert zurück
- 6. geben Sie eine Übermittlungsschaltfläche einen Wert CodeIgniter
- 7. VHDL for Schleife geben Sie mir immer den gleichen Wert
- 8. Erhalten Sie einen Attributwert aus dem Attribut
- 9. Prevent zwei Threads einen Codeblock mit dem gleichen Wert eingeben
- 10. Setzen Sie den Wert jedes Feldes mit dem gleichen Namen Attribut in ein Array mit PHP
- 11. Geben Sie einen Text basierend auf dem Datum ein
- 12. Wählen Sie einen Wert aus der Datenbank und geben Sie einen anderen Wert in Django zurück
- 13. Geben Sie dem Platzhalter den Effekt "Laufschrift"
- 14. Python: Kopieren Sie das übergeordnete Attribut und geben Sie ihm den gleichen Namen
- 15. Wie triggert man einen ValueListener mit dem gleichen Wert
- 16. Geben Sie Tasten gleichen Verhaltens (Zwillinge)
- 17. Nicht alle Codepfade geben einen Wert zurück, wenn sie
- 18. So geben Sie einen Wert im Abschlussblock zurück
- 19. geben Sie einen 'Rank-Wert' zu großen Rastern
- 20. Geben Sie einen gemeinsamen Wert für ähnliche Zellen Excel
- 21. Warum geben diese beiden Funktionen nicht den gleichen Wert zurück?
- 22. AUTOINCREMENT nur, wenn bestimmte Attribut enthält den gleichen Wert
- 23. Geben Sie dem Genymotion-Emulator einen falschen Speicherort
- 24. Geben Sie einen bestimmten Wert basierend auf dem Inhalt einer Zeichenfolge zurück
- 25. Verwenden Sie Tabelle mit mehreren Zeilen mit dem gleichen Wert
- 26. PHP-Array mit dem gleichen Wert
- 27. java Schreib XML-Attribut mit dem Wert
- 28. Funken: Geben Sie einen Vektor
- 29. Ersetzen Sie einen Wert in einer Datentabelle von dem Spaltenindex
- 30. Gleichen Sie einen int-Wert mit einem Text-Tag ab
Probieren Sie es aus und finden Sie heraus! – jedifans
@jedifans 1+ für einen Kommentar des Tages –
Code ist 1024 Worte wert (oder sollte das 512 sein?). Nicht zuletzt weil * "Wenn' width'-Wert mit JavaScript als 'value1' definiert wird * * kann * * mindestens * drei verschiedene Dinge bedeuten. –