PassFront
  1. PassFront
  2. База знаний
  3. Продвинутые темы

Зачем нужны препроцессоры?

Продвинутые темы

Препроцессоры CSS (Sass, Less, Stylus) нужны, чтобы добавить в CSS возможности, которых в нём нет или не хватало: переменные, вложенность, миксины, функции — и упростить поддержку стилей.

Что дают препроцессоры

  • Переменные — переиспользуемые значения (сейчас частично есть в CSS через --var).
  • Вложенность — селекторы внутри селекторов, повторяющая структуру HTML.
  • Миксины — переиспользуемые блоки правил с параметрами.
  • Функции и операции — вычисления, работа с цветами.
  • Партиалы и @import/@use — разбиение стилей на модули.
  • Циклы и условия — генерация правил.
$primary: #6b46ff;

.button {
  color: $primary;
  &:hover { color: darken($primary, 10%); } // вложенность + функция
}

@mixin flex-center { display: flex; align-items: center; justify-content: center; }
.box { @include flex-center; }

Зачем

  • Меньше дублирования (DRY), удобнее поддержка.
  • Структурированные, модульные стили.
  • Ускоряют написание больших стилевых систем.

Актуальность

Современный CSS перенял многое (кастомные свойства, вложенность), плюс есть PostCSS и CSS Modules — необходимость в препроцессорах снизилась, но Sass всё ещё широко используется.

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

Препроцессоры (Sass/Less) добавляют в CSS переменные, вложенность, миксины, функции, модульность и циклы — уменьшают дублирование и упрощают поддержку. Компилируются в обычный CSS. Современный CSS перенял часть возможностей, но Sass по-прежнему популярен.

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