【问题标题】:BEM nesting elements and hover effectsBEM 嵌套元素和悬停效果
【发布时间】:2021-12-10 18:32:32
【问题描述】:

所以,假设我有以下代码

<div class="list">
    <div class="list__wrapper"> 
        <ul class="list__menu">
            <li class="list__item">
                <a class="list__link">Link</a>
                <p class="list__description">Desc</p>
            </li> 
        </ul>
    </div>
</div>

我的 SCSS 将如下所示:

.list {
    &__wrapper {

    }    

    &__menu {

    }
    ...
}

问题

我想在 li 上创建一个悬停效果,它将包含 list_link 和一些其他元素,但我只想将颜色更改为 list__link 类,我想知道如何在 SCSS 中最有效地做到这一点。

我目前的解决方案(我不太喜欢)

.list {
    &__item {
        &:hover {
            .list__link {
                 color: $secondary
            }
        }
    }    
}

我确定我做错了什么,因为我感觉我正在打破应该是 SCSS 和 BEM 的优势,但到目前为止我还没有找到解决方案。

【问题讨论】:

    标签: css sass bem


    【解决方案1】:

    您可以通过执行以下操作来简单地选择此选择器:

    .list {
      &__item:hover .list__link {
        color: $secondary;
      }
    }
    

    【讨论】:

      猜你喜欢
      • 2022-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-13
      • 2022-11-30
      • 1970-01-01
      • 1970-01-01
      • 2013-10-15
      相关资源
      最近更新 更多