НАЙКРАЩИЙ САЙТ ДЛЯ ВЕБ-РОЗРОБНИКІВ
Sass. W3Schools українською. Уроки для початківців

En

Sass @import та партіали


Sass зберігає CSS-код за принципом DRY (Don't Repeat Yourself - Не повторюйте себе). Один зі способів написання DRY коду – зберігати відповідний код в окремих файлах.

Ви можете створювати невеликі файли з фрагментами CSS для включення в інші файли Sass. Прикладами таких файлів можуть бути: файл скидання, змінні, кольори, шрифти, розміри шрифтів тощо.


Імпорт файлів Sass

Як і CSS, Sass також підтримує директиву @import.

Директива @import дозволяє включати вміст одного файлу в інший.

Директива CSS @import має серйозний недолік через проблеми з продуктивністю; він створює додатковий запит HTTP кожного разу, коли ви його викликаєте. Однак директива Sass @import включає файл у CSS; тому під час виконання не потрібен додатковий виклик HTTP!

Sass Синтаксис імпорту:

@import filename;

Підказка: Вам не потрібно вказувати розширення файлу, Sass автоматично припускає, що ви маєте на увазі файл .sass або .scss. Ви також можете імпортувати файли CSS. Директива @import імпортує файл, і будь-які змінні або міксини, визначені в імпортованому файлі, потім можна використовувати в основному файлі.

Ви можете імпортувати скільки завгодно файлів у головний файл:

Приклад

@import "variables";
@import "colors";
@import "reset";

Давайте розглянемо приклад: припустімо, що у нас є файл скидання під назвою "reset.scss", який виглядає так:

Приклад

SCSS Синтаксис (reset.scss):

html,
body,
ul,
ol {
  margin: 0;
  padding: 0;
}

і тепер ми хочемо імпортувати "reset.scss" в інший файл під назвою "standard.scss".

Ось як ми це робимо: нормально додавати директиву @import у верхній частині файлу; таким чином його вміст матиме глобальну область дії:

SCSS Синтаксис (standard.scss):

@import "reset";

body {
  font-family: Helvetica, sans-serif;
  font-size: 18px;
  color: red;
}

Отже, коли файл "standard.css" транспільовано, CSS виглядатиме так:

CSS виведення:

html, body, ul, ol {
  margin: 0;
  padding: 0;
}

body {
  font-family: Helvetica, sans-serif;
  font-size: 18px;
  color: red;
}
Спробуйте самі »

Sass партіали (частки)

За замовчуванням Sass безпосередньо транспілює всі файли .scss. Однак, коли ви хочете імпортувати файл, вам не потрібно безпосередньо транспільувати файл.

Sass має механізм для цього: якщо ви починаєте ім’я файлу з підкреслення, Sass не буде транспілювати його. Файли з таким іменем у Sass називаються партіалами (частками).

Отже, частковий файл Sass має назву з підкресленням на початку:

Sass Синтаксис партіала:

 _filename;

У наступному прикладі показано частковий файл Sass під назвою "_colors.scss". (Цей файл не буде транспільовано безпосередньо в "colors.css"):

Приклад

"_colors.scss":

$myPink: #EE82EE;
$myBlue: #4169E1;
$myGreen: #8FBC8F;

Тепер, якщо ви імпортуєте частковий файл (партіал), опустіть підкреслення. Sass розуміє, що він повинен імпортувати файл "_colors.scss":

Приклад

@import "colors";

body {
  font-family: Helvetica, sans-serif;
  font-size: 18px;
  color: $myBlue;
}