Heim > Fragen und Antworten > Hauptteil
Wie kompiliere ich $i
in eine „dreistellige Zahl“?
@for $i from 1 through 100 { .bg-image#{$i} { background-image: url("folder/bg-image#{$i}.jpg"); } }
Ich möchte, dass es so kompiliert wird.
.bg-image001 { background-image: url("folder/bg-image001.jpg"); } .bg-image002 { background-image: url("folder/bg-image002.jpg"); } ... .bg-image099 { background-image: url("folder/bg-image099.jpg"); } .bg-image100 { background-image: url("folder/bg-image100.jpg"); }
Ich habe es so versucht: https://www.sassmeister.com/gist/7581995
So:
.bg-image#{"%03d" % $i}
Aber ich habe einen Fehler im Webstorm erhalten.
Gibt es noch andere gute Methoden? Vielen Dank für Ihre Hilfe.
P粉4492810682024-04-05 10:13:07
https://www.sassmeister.com/gist/7581995 这样, 这是构建过程中出现间距的问题。
我是这样解决的:
@function zerofill($i) { @return #{str-slice("000",0,3 - str-length(#{$i}))}+$i; } @for $i from 1 through 100 { $i: zerofill($i); #layer-#{$i} { background: url('../layers/layer-#{$i}.png'); } }