.list {
$self: &; // я люблю так записывать имя компонента, как и западные товарищи
@at-root #{$self}__item {
&:first-child {
#{$self}__link { // тут @at-root не нужен, ибо вложенность нужно сохранить
//
}
}
@at-root #{$self}__smth {
//
}
}
@at-root #{$self}__link {
//
}
}.list {
//
}
.list__item {
//
}
.list__item:first-child .list__link {
//
}
.list__smth {
//
}
.list__link {
//
}
input:placeholder-shown. Или вообще не работают. Ну а так, через пару лет можно везде спокойно использовать CSS, чтобы делать так:
Я с таким не сталкивался за всё время. Похоже на проблему, привязанную либо на баг браузера какой-то специфичной версии, либо на ошибку из-за каких-то манипуляций с JS, которые меняют либо CSS, либо позиционирование.