PassFront
  1. PassFront
  2. База знаний
  3. Основы CSS

Для чего нужны модульные стили в CSS?

Основы CSS

Модульные стили — стили, разбитые по компонентам и изолированные друг от друга, чтобы изменения в одном месте не ломали другое.

Проблема без модульности

Весь CSS глобальный: класс .title в одном файле перекрывает .title в другом, а удалить старый стиль страшно — непонятно, где он ещё используется.

Способы сделать стили модульными

  • Методологии именования — БЭМ: .card__title.
  • CSS Modules — уникальные имена классов при сборке.
  • Scoped-стили — во Vue <style scoped>, в Svelte по умолчанию.
  • CSS-in-JS — стили внутри компонента.
  • Cascade layers (@layer) — управление порядком слоёв.
  • `@scope` — нативное ограничение области действия стилей.

Что это даёт

  • компоненты можно переносить и удалять вместе со стилями;
  • меньше неожиданных конфликтов и !important;
  • проще поддерживать большой проект и работать командой.

Коротко для собеседования

Модульные стили изолируют CSS по компонентам (БЭМ, CSS Modules, scoped, CSS-in-JS), чтобы избежать глобальных конфликтов и упростить поддержку.

Подробнее: MDN — @scope

Другие вопросы раздела