Hallo, ich versuche SASS / SCSS zu lernen und versuche mein eigenes Mixin für Clearfix umzugestalten
Ich möchte, dass das Mixin davon abhängt, ob ich das Mixin eine Breite übergebe.
Gedanken bisher (Pseudocode nur, da ich andere Mixins einschließen werde)
@mixin clearfix($width) {
@if !$width {
// if width is not passed, or empty do this
} @else {
display: inline-block;
width: $width;
}
}
So dachte ich, ich könnte es nennen, aber es funktioniert nicht.
@include clearfix();
oder
@include clearfix(100%)
oder
@include clearfix(960px)
Ich würde mich über jede Hilfe bei der besten oder richtigen Vorgehensweise freuen!
conditional
mixins
sass
if-statement
clairesuzy
quelle
quelle
Antworten:
Sie könnten dies versuchen:
Ich bin mir Ihres beabsichtigten Ergebnisses nicht sicher, aber das Festlegen eines Standardwerts sollte false zurückgeben.
quelle
" "
aber ich mag den automatischen Wert besser :) - musste keine Variable setzen, obwohl ich es in die Mixin-Syntax als Standard vaue gesetzt habe@mixin clearfix($width: auto) {...
dankeSie können Standardparameterwerte inline zuweisen, wenn Sie das Mixin zum ersten Mal erstellen:
quelle
Sie können den Parameter standardmäßig auf
null
oder setzenfalse
.Auf diese Weise wäre es kürzer zu testen, ob ein Wert als Parameter übergeben wurde.
quelle