我不确定命名我的BEM块,他们需要包装的最佳方式。 例如,假设下面的标记:BEM命名包装重复块
<div class="products-list">
<div class="product__item">
<div class="product__item__title">Product 1</div>
<img class="product__item__image" />
</div>
<div class="product__item">
<div class="product__item__title">Product 2</div>
<img class="product__item__image" />
</div>
</div>
我觉得上面的包装(产品列表)是种损失。
这显然太深,使用这样的:
products-list__product__item__image
那么,我们应该如何处理在BEM 包装里子元素也包装器?
的元素'.product__item__title'是无效的。如果你想把所有的东西都保存在一个''.product'中,那么你必须使用一个扁平的命名约定:'.product__item','.product__item-title','.product__item-image'。因为在BEM树中,元素'item','.item-title','.item-image'都是兄弟(独立于它们在DOM树中的关系)。 – Paleo