Sass / Scss @mixin также для селектора элемента

#css #sass

#css #sass

Вопрос:

Скажем, у меня должен быть следующий CSS:

 div { }
div:hover {}
div:active {}
 

Есть ли способ создать @mixin , чтобы я мог использовать

 @mixin myAmazingMixer() {
    // Div stuff
    :hover { // Hover stuff }
    :active { // active stuff }
}

div {
   @include myAmazingMixer
}
 

Ответ №1:

Абсолютно! Единственное, чего вам, вероятно, не хватает, это amp; селектор (который ссылается на родительский селектор)

 @mixin myAmazingMixer() {
    // Div stuff
    amp;:hover { // Hover stuff }
    amp;:active { // active stuff }
}

div {
   @include myAmazingMixer
}
 

Без amp; этого ваш :hover будет применен ко всем дочерним элементам div .

Комментарии:

1. Ну, это было просто! Спасибо! Я проголосую за это через 9 минут, как только это позволит мне!

Ответ №2:

Создайте микс, подобный: @mixin highlight{color: white;}, а затем, если вообще какому-либо другому элементу необходимо присвоить белый цвет, вы можете просто добавить этот микс в этот конкретный класс, указав @include highlight

Ответ №3:

Да, вы можете это сделать. Вы можете создать mixin (правило css) и включить его.

Комментарии:

1. Создайте микс, подобный: @mixin выделите {color: white;}, а затем, если вообще какому-либо другому элементу необходимо присвоить белый цвет, вы можете просто добавить этот микс в этот конкретный класс, указав