Оператор "&" в SassScript
Также как и в объявлении ссылки на родителя,
оператор &
в SassScript относится к текущему родительскому селектору. Это список, разделенный запятыми,
состоящий из списков, разделенных пробелами. Например:
.foo.bar .baz.bang, .bip.qux {
$selector: &;
}
.foo.bar .baz.bang, .bip.qux
$selector: &
В этом примере значением переменной $selector
является ((".foo.bar" ".baz.bang"), ".bip.qux").
Составные селекторы приведены, чтобы показать, что они строковые, хоть и указывались без кавычек.
Даже если родительский селектор не содержит запятую или пробел, &
всегда будет иметь два уровня вложенности,
поэтому он может быть доступен постоянно.
Если нет родительского селектора, значение &
будет нулевым. Это означает, что вы можете использовать его в миксинах,
чтобы проверить наличие родительского селектора:
@mixin does-parent-exist {
@if & {
&:hover {
color: red;
}
} @else {
a {
color: red;
}
}
}
@mixin does-parent-exist
@if &
&:hover
color: red
@else
a
color: red
Поддержка