Skip to main content
Практика завдань

CSS препроцесори: SASS, SCSS та LESS

Що таке CSS Препроцесори?

CSS препроцесори — це мови сценаріїв, які розширюють CSS такими функціями, як змінні, вкладеність, міксини та функції. Код препроцесора компілюється в стандартний CSS перед тим, як бути наданим браузеру.


Популярні Препроцесори

ПрепроцесорРозширенняКлючова Особливість
SASS.sassСинтаксис на основі відступів (без фігурних дужок/крапок з комою)
SCSS.scssСинтаксис, подібний до CSS, з фігурними дужками та крапками з комою
LESS.lessСхожий на SCSS, використовує @ для змінних

SCSS є найпопулярнішим — це надмножина CSS, що означає, що будь-який дійсний CSS також є дійсним SCSS.

Ключові Особливості

1. Змінні

scss
// SCSS $primary-color: #007bff; $font-stack: 'Helvetica Neue', sans-serif; body { font-family: $font-stack; color: $primary-color; }

2. Вкладеність

scss
.navbar { display: flex; &__item { padding: 10px; &:hover { background: #f0f0f0; } &--active { font-weight: bold; } } }

3. Міксини

scss
@mixin flex-center { display: flex; justify-content: center; align-items: center; } @mixin responsive($breakpoint) { @if $breakpoint == tablet { @media (min-width: 768px) { @content; } } @else if $breakpoint == desktop { @media (min-width: 1024px) { @content; } } } .hero { @include flex-center; height: 100vh; @include responsive(tablet) { height: 60vh; } }

4. Частини та Імпорти

scss
// _variables.scss (частина — не компілюється окремо) $primary: #007bff; // main.scss @use 'variables'; body { color: variables.$primary; }

5. Функції та Операції

scss
@function rem($pixels) { @return $pixels / 16 * 1rem; } h1 { font-size: rem(32); } // 2rem

SCSS проти Нативних CSS Кастомних Властивостей

ОсобливістьЗмінні SCSSCSS Кастомні Властивості
Компілюється наЧас збіркиЧас виконання
Динамічні зміниНіТак (через JS)
СкоупінгЛексичнийКаскадний
Підтримка медіа-запитівНіТак
Вкладеність, міксиниТакНі

Коли Використовувати Препроцесори

Використовуйте препроцесори, коли:

  • Вам потрібні міксини, функції, цикли
  • Працюєте з великими кодовими базами, які виграють від частин
  • Ваш проект використовує BEM або інші угоди про найменування з вкладеністю

Розгляньте нативний CSS, коли:

  • Вам потрібне темування в режимі виконання (темний/світлий режим)
  • Проект малий і простий
  • Ви хочете менше залежностей при збірці

Важливо:

Сучасний CSS прийняв багато функцій препроцесорів (змінні, вкладеність, calc()). Проте SCSS залишається широко використовуваним у виробництві для міксинів, функцій та кращої організації коду. Багато проектів використовують як SCSS, так і CSS кастомні властивості разом.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.

Дочитали статтю?
Практика завдань