In Reagenz kann man Inline-CSS-Stile wie folgt angeben:Garten generiert Inline-Stile in Reagenz der Hiccup
[:div {:style {:border "1px solid red"}} "My Text"]
Garten solche CSS-Eigenschaften, die mehrere Werte in einer Liste allgemeineren machen kann. Vektoren für Komma getrennte Listen und verschachtelte Vektoren (hier verwendete) für Listen Leerzeichen getrennt:
(require '[garden.core :refer [style]])
(style {:border [[:1px :solid :black]]})
;= "border: 1px solid red;"
Wie können diese Dinge kombiniert werden? Das Reagenz scheint stur zu sein und nur Hash-Maps für das Attribut style zu akzeptieren. Das Akzeptieren eines Strings wäre auch hier eine Lösung.
Im Allgemeinen sind Inline-Stile auf lange Sicht keine gute Wahl. So könnte man das lösen, indem man eine Klasse an die div
anfügt und indem man seinen Stil global durch Gärten spezifiziert css
Funktion.
Klasse Beispiel:
[:div.myclass "My Text"]
(css [:.myclass {:border [[:1px :solid :black]]}])
;= ".myclass {\n border: 1px solid black;\n}"
Aber manchmal ist es gut, mit Inline-Styles zu beginnen, so: Gibt es eine Möglichkeit, ihm die Art und Weise zu tun, die oben beschrieben wird?
Ich persönlich injiziere ('goog.style/installStyles') und entferne (' goog.style/uninstallStyles') nach einem figwheel reload. Funktioniert wunderbar. Sie können einige Attribute nicht inline angeben, damit Sie früher oder später Probleme bekommen – ClojureMostly