Sammenslåing av sekvenser av selektorer i @extend i SASS
Hvis vi trenger å slå sammen
sekvenser av selektorer,
bruker vi også direktivet @extend:
La oss se på følgende eksempel:
#main .list p {
font-weight: bold;
}
#sub .resume .link {
@extend p;
}
Legg merke til den kompilerte koden
i css-filen, når to
sekvenser som ikke har noen felles
selektorer slås sammen, dannes det automatisk
nye selektorer: en med den første sekvensen
foran den andre og en med den andre sekvensen
foran den første:
#main .list p,
#main .list #sub .resume .link, #sub .resume #main .list .link {
font-weight: bold;
}
I tilfeller hvor sekvensene
har en felles selektor, vil de bli slått sammen
og bare forskjellene vil veksle
(hvis noen slike finnes). I det neste eksempelet
har begge sekvensene identifikatoren #main:
#main .list p {
font-weight: semi-bold;
}
#main .resume .link {
@extend p;
}
Som et resultat av kompilering vil disse to identifikatorene blive slått sammen:
#main .list p,
#main .list #sub .resume .link, #sub .resume #main .list .link {
font-weight: bold;
}
Forklar hva resultatet av kompilering av følgende kode vil være:
div p {
font-size: 12px;
padding-bottom: 4px;
}
link button #card-title {
@extend p;
}