Sobes.tech
Back to questions
Junior — Middle
64

Можете объяснить концепцию метода именования классов BEM и его основные компоненты?

Companies where asked
YadroYadro

Answer from AI

sobes.tech AI

BEM (Block, Element, Modifier) — это методология именования CSS-классов, которая помогает создавать понятную и поддерживаемую структуру стилей.

Основные компоненты:

  • Block (Блок) — независимый компонент интерфейса, например, меню или кнопка. Пример: menu.
  • Element (Элемент) — часть блока, которая не может существовать отдельно, например, пункт меню. Обозначается через двойное подчеркивание: menu__item.
  • Modifier (Модификатор) — состояние или вариант блока/элемента, например, активный пункт меню. Обозначается через двойной дефис: menu__item--active.

Пример:

<div class="menu">
  <a class="menu__item menu__item--active" href="#">Главная</a>
  <a class="menu__item" href="#">Контакты</a>
</div>

Такой подход облегчает понимание структуры и переиспользование стилей.