Zmienne wewnątrz selektorów w LESS
Zmienne można używać również wewnątrz selektorów.
Aby to zrobić, należy jednak użyć
nieco innej składni wstawiania zmiennej:
po @ nazwę zmiennej należy umieścić
w nawiasach klamrowych. Spójrzmy na przykładach.
Załóżmy, że mamy następującą zmienną:
styles.less@var: div;
Wstawmy tę zmienną do selektora. Rozważmy różne sytuacje.
Przykład
Wstawmy naszą zmienną jako selektor:
styles.less@{var} {
font-size: 20px;
}
Wynik kompilacji:
styles.cssdiv {
font-size: 20px;
}
Przykład
Załóżmy teraz, że nasza zmienna zawiera część selektora:
styles.lessmain @{var} {
font-size: 20px;
}
Wynik kompilacji:
styles.cssmain div {
font-size: 20px;
}
Przykład
Załóżmy teraz, że mówimy, że w naszej zmiennej
znajduje się nie nazwa znacznika, a jego id.
Dodajmy kratkę przed nazwą zmiennej:
styles.less#@{var} {
font-size: 20px;
}
Wynik kompilacji:
styles.css#div {
font-size: 20px;
}
Przykład
Załóżmy teraz, że mówimy, że w naszej zmiennej znajduje się nie nazwa znacznika, a jego klasa. Dodajmy kropkę przed nazwą zmiennej:
styles.less.@{var} {
font-size: 20px;
}
Wynik kompilacji:
styles.css.div {
font-size: 20px;
}
Zadania praktyczne
Opowiedz, jaki będzie wynik kompilacji następującego kodu:
styles.less@var: ul;
@{var} {
font-size: 20px;
}
Opowiedz, jaki będzie wynik kompilacji następującego kodu:
styles.less@var: ul;
div @{var} {
font-size: 20px;
}
Opowiedz, jaki będzie wynik kompilacji następującego kodu:
styles.less@var: ul;
div @{var} {
font-size: 20px;
}
Opowiedz, jaki będzie wynik kompilacji następującego kodu:
styles.less@var: ul;
@{var} li {
font-size: 20px;
}
Opowiedz, jaki będzie wynik kompilacji następującego kodu:
styles.less@var: list;
.@{var} {
font-size: 20px;
}
Opowiedz, jaki będzie wynik kompilacji następującego kodu:
styles.less@var: list;
#@{var} li {
font-size: 20px;
}
Opowiedz, jaki będzie wynik kompilacji następującego kodu:
styles.less@var: list;
.@{var} li {
font-size: 20px;
}
Opowiedz, jaki będzie wynik kompilacji następującego kodu:
styles.less@var: list;
ul.@{var} li {
font-size: 20px;
}
Opowiedz, jaki będzie wynik kompilacji następującego kodu:
styles.less@var: list;
ul.@{var} li {
font-size: 20px;
}
Opowiedz, jaki będzie wynik kompilacji następującego kodu:
styles.less@var: .block;
ul@{var} {
font-size: 20px;
}
Opowiedz, jaki będzie wynik kompilacji następującego kodu:
styles.less@var: .block;
ul@{var} li {
font-size: 20px;
}
Opowiedz, jaki będzie wynik kompilacji następującego kodu:
styles.less@var: a;
@{var}:hover {
text-decoration: none;
}
Opowiedz, jaki będzie wynik kompilacji następującego kodu:
styles.less@var1: div;
@var2: a;
@{var1} @{var2}:hover {
text-decoration: none;
}
Opowiedz, jaki będzie wynik kompilacji następującego kodu:
styles.less@var1: block1;
@var2: block2;
.@{var1}.@{var2} {
font-size: 20px;
}