Какие методологии написания CSS знаешь

Ответ

BEM (Block, Element, Modifier) – популярная методология, где:

  • Block – независимый компонент (.card)
  • Element – часть блока (.card__title)
  • Modifier – вариация блока/элемента (.card--wide)

Пример:

.card { /* Block */ }
.card__title { /* Element */ }
.card--featured { /* Modifier */ }

OOCSS (Object-Oriented CSS) – разделение на структуру и оформление:

/* Structure */
.button { display: inline-block; }

/* Skin */
.btn-primary { background: blue; }

SMACSS (Scalable Modular Architecture) – разделение стилей на категории:

  • Base (reset, базовые стили)
  • Layout (сетка, шапка, подвал)
  • Module (компоненты)
  • State (активные/неактивные состояния)
  • Theme (темы)

ITCSS (Inverted Triangle CSS) – организация стилей от общих к конкретным:

  1. Settings (переменные)
  2. Tools (миксины)
  3. Generic (reset)
  4. Elements (теги)
  5. Objects (структурные классы)
  6. Components (UI компоненты)
  7. Utilities (вспомогательные классы)