Войти с помощью github
Форум /

Всем привет!

Долгое время используем БЭМ в качестве CSS методологии. Очень удобно. Возникло пару вопросов:

  1. Есть ситуация, когда нужно скрывать/показывать элементы блока или сам блок. Для этого пишется класс утилита, например d-none. Так же есть небольшое количество других утилит. Утилита как вы знаете представляет собой что-то вида:
.d-none {
  display: none !important;
}

т.е. выполняют одну единственную функцию, но при этом используют некрасивый прием с !important. Отчасти, это похоже на использование глобальных переменных, которые затирают основное поведение блока. Хотелось бы узнать, что делать если есть много блоков, состояние которых нужно как-то одинаково менять (ну тот же display: none). Создавать для этого у каждого блока отдельный модификатор типа block_hidden? Какие правильные практики для этого использовать?

  1. Где-то читал, что в методологии БЭМ не очень приветствуется создание адаптивных блоков. Хотя не очень пойму почему. Ведь можно просто реализовывать адаптивную составляющую через media-queries. Что можно на этот счет почитать? И какие есть на этот счет рекомендации?

Заранее благодарю за ответы.