@MyQuestion
junior-middle fullstack

БЭМ: могут ли элементы блока родителя, быть элементами дочернего блока?

Допустим, есть форма:

<form class="filter-form" action="">
    <fieldset class="filter-form__item sort">
      <legend class="filter-form__title">
        Сортировка:
      </legend>
      <div class="filter-form__field filter-form__field--arr-down">
        <select class="sort__select" name="sort">
          <option value="">some text</option>
          <option value="">some text</option>
          <option value="">some text</option>
          <option value=""> some text</option>
        </select>
        <!-- <i class=""></i> -->
      </div>
    </fieldset>
    <fieldset class="filter-form__item price-range">
      <legend class="filter-form__title">
        Цена:
        <span class="price-range__label">
          <output class="price-range__lower-cost" name="lower-cost">500 руб.</output> –
          <output class="price-range__upper-cost" name="upper-cost">1000 руб.</output>
        </span>
      </legend>
      <div class="filter-form__field price-range__slider">
      </div>
    </fieldset>
  </form>

Для filter-form__item я задаю внешнюю геометрию, в рамках формы.
Для filter-form__field, я задаю общий фон, для всех подобных.
Для filter-form__title - значения заголовков во всех блоках формы.

Я понимаю, что вложенность БЭМ дерева, работает по другому и не зависит от вложенности блоков. Но тут, кроме item, остальные перечисленные блоки, как-то неприятно выделяются. Как будто нарушена логика.
Тогда, может правильнее было бы назвать такие блоки, которые я буду переиспользовать как field-title, field-wrapper? Просто все их отступы одинаковы, правила одинаковы и как не крути, это элемент какого-то блока...

Это нормально, так писать БЭМ?
  • Вопрос задан
  • 91 просмотр
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы