Что такое mixin

«Что такое mixin» — вопрос из категории Паттерны, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Миксин — это способ повторного использования кода в CSS препроцессорах, таких как Sass или Less. Он позволяет определить стили один раз и включать их в другие правила, избегая дублирования кода.

Пример в Sass:

@mixin border-radius($radius) {
  -webkit-border-radius: $radius;
  -moz-border-radius: $radius;
  border-radius: $radius;
}

.button {
  @include border-radius(5px);
}

Особенности:

  • Могут принимать параметры (как в примере выше)
  • Поддерживают значения по умолчанию
  • Позволяют группировать часто используемые стили
  • Компилируются в обычный CSS

Отличаются от @extend тем, что копируют код, а не создают группировку селекторов.