1. 17. 15. Модификаторы блоков и элементов
В этой группе типовых интерфейсных шаблонов собраны примеры использования модификации блоков и их элементов.
Случай 1
Блок может измениться. Есть два или больше вариантов отображения этого блока.
Примерная разметка:
<div class="block">
<div class="block__element-1"></div>
<div class="block__element-2"></div>
...
</div>
...
<div class="block block--modifier">
<div class="block__element-1"></div>
<div class="block__element-2"></div>
...
</div>Обычная карточка и карточка с любым шевроном (Новинка, Акция, Скидка и другие).

Распределение по блокам, элементам и модификаторам:

Разметка:
Случай 2
Некоторые элементы внутри БЭМ-блока могут изменяться и их внешний вид отличается от базового состояния.
Примерная разметка:
Под эту схему подходят фотографии из каталога, которым поставили лайк.

Блоки, элементы и модификаторы:

Разметка интерфейсного элемента:
Случай 3
Бывают случаи, когда оба описанные выше шаблона (модификация блока и модификация элемента) используются на одном БЭМ-блоке одновременно.
Примерная разметка:
Допустим, это карточка товара, который закончился. Во-первых, в таких карточках кнопка купить/заказать становится не активной, во-вторых, сама карточка может отличаться по внешнему виду.

Блоки, элементы и модификаторы:

Разметка карточки:
Случай 4
Вложенный блок отображается не в своём, обычном, базовом состоянии, а немного видоизменённым.
Примерная разметка:
К примеру, в блоке контакты ссылки на страницы в социальных сетях различаются по цвету.
Блоки, элементы и модификаторы для интерфейсного элемента:
Разметка для элементов:
Случай 5
БЭМ-блок может менять свой внешний вид и при этом быть ещё и другим БЭМ-блоком с модификацией.
Примерная разметка:
Под эту схему подходят всплывающие окна, для которых модификацией может служить вариант позиционирования (вверху экрана, внизу экрана).К примеру, нужно согласиться использовать Cookie на сайте, в то же время периодически появляется окно с советом дня.

Распределение по БЭМ-сущностям:

Разметка:
Last updated