Vorrei prendere l'ID di un div a cui sto applicando lo stile e impostare una variabile per avere quell'ID come valore. È qualcosa che Sass può fare? Quindi il selettore #eleven
imposterà il valore di una variabile su "undici".Usa il selettore come valore per una variabile in SASS
Ecco il codice corrente. In primo luogo un'intermedia che sto usando:
@mixin left-icon ($bgcolor, $bgurl, $iconmargin) {
background: $bgcolor url(images/#{$bgurl}.png) no-repeat left 5px center;
& h2, & p {margin-left: $iconmargin;}
}
E questo è quando chiamo il mixin:
#eleven {
@include left-icon(#de4c3f,eleven,$defaulticonmargin);
}
Così, quando ho usato che mixin c'è un colore di sfondo, parte di un nome di file, e un valore per i margini (che vengono aggiunti ad alcuni selettori figlio) impostati. Come puoi vedere la variabile $bgurl
corrisponde al nome del selettore. Fondamentalmente voglio automatizzarlo in modo che lo $bgurl
sia impostato sulla stringa di testo dall'ID (con il simbolo cancellato).
La ragione è che avrò dozzine di scatole con lo stesso schema di base ma un'immagine di sfondo unica e sembra, nella mia testa, la cosa più semplice da fare sarebbe salvare ciascun PNG usando il nome dell'ID come il nome del file e poi lasciare che Sass li abbini. Potrei semplicemente fare come ho fatto qui e mettere il valore in longhand ma sembra che qualcosa di simile potrebbe fare Sass, preferirei spendere tempo per farlo bene e imparare di più su Sass che fare un mezzo lavoro.
Spero che abbia senso e non sia una domanda ridicolmente stupida - Ammetto (e non sarete sorpreso di sentire) che sono una recluta molto grezza di Sass ma immagino di poter imparare da questa domanda.
Qualche feedback per noi? –
Sì, sono appena tornato a questo. La soluzione di Pezholio fa esattamente ciò di cui ho bisogno. Vedrò anche di implementare il tuo ma non mi è del tutto chiaro come risponda al problema - questa è una limitazione delle mie conoscenze e spero di saperne di più su SASS provando la tua versione – user3717789