Задать вопрос

Как правильней сделать в рамках БЭМ?

Доброго дня.
Есть один и тот же блок, который необходимо стилизовать немножко иначе в зависимости от того, в каком месте он расположен - в сайдбаре или посреди контента. Как правильней сделать? Путем создания модификатора под каждый из вариантов (.block_type_sidebar и т.п.), или все-таки сделать стиль блока зависимым от другого блока (.selector .block)? В руководстве написано, что второй вариант возможен, но не рекомендуется, однако первый видится мне избыточным.

Заранее спасибо.
  • Вопрос задан
  • 196 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Профессиональная вёрстка на HTML и CSS
    3 месяца
    Далее
  • Skillbox
    Веб-вёрстка 3.0
    3 месяца
    Далее
  • OTUS
    HTML/CSS
    3 месяца
    Далее
Решения вопроса 2
@ilyarsoftware
...стилизовать немножко иначе...

Это может означать очень разное, возможные варианты:
  1. положение — определяем во внешнем окружении т.е. сделать стиль блока зависимым от другого блока;
  2. геометрия, цвет и размеры — должно определятся в самом блоке, вариативность реализуется модификатором, но в зависимости от масштаба вариативности и здравого смысла тоже может быть определятся в другого блоке (в случае применения методологии такую специфичность легко отслеживать), если вариативность уникальная, сделать стиль блока зависимым от другого блока;
  3. типографика — сделать стиль блока зависимым от другого блока.

В общем если вариативность ограничена и требуется в разных местах уместнее реализовывать модификатором.
Применение миксов уместно на случай, когда надо совмещать реализации и их вариации.

Дополнительно:


P.S. Добавьте к вариантам свой случай в комментарии, дополню ответ.
Ответ написан
werty1001
@werty1001
undefined
Правильней модификатором или миксом, на практике делайте так, как удобно лично вам.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
FoodSoul Калининград
от 180 000 до 250 000 ₽
Data Directs Тель-Авив
от 350 000 ₽