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

Всем привет!

Пытаюсь разобраться как правильно использовать БЭМ для заголовков и пока не могу найти правильное решение.

Поясню на примере: Есть блок title

.title {
    padding: 18px 0;
    font-size: 36px;
    font-weight: bold;
}

который используется так

<h1 class="title">Some text</h1>

Тут на моей странице меняется семантическая структура и тот же самый заголовок семантически становится h2. И теперь у него другие внешние отступы поэтому блок на странице выглядит иначе.

  • Делать глобальный CSS-reset противоречит БЭМ (поскольку это глобальные стили и могут меняться от проекта к проекту)
  • Сбросить внешние отступы в самом блоке я не имею права (поскольку это внешняя стилизация)
  • Вариант который я сейчас вижу кажется мне очень костыльным
    <div class="title">
      <h2 class="title__text">Some text<h2>
    </div>
    
    .title__text {
      margin: 0;
      padding: 18px 0;
      font-size: 36px;
      font-weight: bold;
    }
    
    То есть сам блок это пустая обёртка а уже h1 или h2 - это элемент блока, который я могу стилизовать как мне нравится.

Очень хочу услышать ваше мнение поэтому поводу. Как правильно сделать это по БЭМ?