Zoeken…


Syntaxis

  • $ variable_name : value ;

Sass

Variabelen worden gebruikt om een waarde eenmaal op te slaan die meerdere keren in een Sass-document zal worden gebruikt.

Ze worden meestal gebruikt voor het besturen van dingen zoals lettertypen en kleuren, maar kunnen worden gebruikt voor elke waarde van een eigenschap.

Sass gebruikt het $ -symbool om iets variabel te maken.

$font-stack: Helvetica, sans-serif
$primary-color: #000000

body
  font-family: $font-stack
  color: $primary-color

SCSS

Net als in Sass worden SCSS-variabelen gebruikt om een waarde op te slaan die meerdere keren in een SCSS-document zal worden gebruikt.

Variabelen worden meestal gebruikt om vaak gebruikte eigenschapswaarden (zoals lettertypen en kleuren) op te slaan, maar kunnen voor elke waarde van een eigenschap worden gebruikt.

SCSS gebruikt het $ -symbool om een variabele te declareren.

$font-stack: Helvetica, sans-serif;
$primary-color: #000000;

body {
  font-family: $font-stack;
  color: $primary-color;
}

U kunt !default bij het declareren van een variabele als u alleen een nieuwe waarde aan deze variabele wilt toewijzen als deze nog niet is toegewezen:

$primary-color: blue;
$primary-color: red !default; // $primary-color is still "blue"
$primary-color: green;        // And now it's green.

Variabel bereik

Variabelen bestaan binnen een specifiek bereik, net zoals in JavaScript.

Als u een variabele buiten een blok declareert, kan deze overal in het blad worden gebruikt.

$blue: dodgerblue;

.main {
    background: $blue;

    p {
        background: #ffffff;
        color: $blue;
    }
}

.header {
    color: $blue;
}

Als u een variabele binnen een blok declareert, kan deze alleen in dat blok worden gebruikt.

.main {
    $blue: dodgerblue;

    background: $blue;

    p {
        background: #ffffff;
        color: $blue;
    }
}

.header {
    color: $blue; // throws a variable not defined error in SASS compiler
}

Variabelen die op bladniveau worden gedeclareerd (buiten een blok) kunnen ook in andere bladen worden gebruikt als ze worden geïmporteerd .

Lokaliseer variabelen met de instructie @ at-root

@ at-root- instructie kan worden gebruikt om variabelen te lokaliseren.

$color: blue;

@at-root {
  $color: red;

  .a {
    color: $color;
  }
  .b {
    color: $color;
  }
}

.c {
  color: $color;
}

is samengesteld om:

.a {
  color: red;
}

.b {
  color: red;
}

.c {
  color: blue;
}

interpolatie

Variabelen kunnen worden gebruikt bij stringinterpolatie. Hiermee kunt u dynamisch selectors, eigenschappen en waarden genereren. En de syntaxis om dit te doen, is een variabele #{$variable} .

$className: widget;
$content: 'a widget';
$prop: content;

.#{$className}-class {
  #{content}: 'This is #{$content}';
}
// Compiles to

.widget-class {
  content: "This is a widget";
}

U kunt het echter niet gebruiken om dynamisch namen van mixins of functies te genereren.

Variabelen in SCSS

In SCSS beginnen variabelen met $ -teken en worden ingesteld als CSS-eigenschappen.

$label-color: #eee;

Ze zijn alleen beschikbaar binnen geneste selectors waar ze zijn gedefinieerd.

#menu {
    $basic-color: #eee;
    color: $basic-color;
}

Als ze worden gedefinieerd buiten geneste selectors, kunnen ze overal worden gebruikt.

$width: 5em;

#menu {
  width: $width;
}

#sidebar {
  width: $width;
}

Ze kunnen ook worden gedefinieerd met de !global flag, in welk geval ze ook overal beschikbaar zijn.

#menu {
  $width: 5em !global;
  width: $width;
}

#sidebar {
  width: $width;
}

Het is belangrijk op te merken dat variabelenamen afwisselend koppeltekens en onderstrepingstekens kunnen gebruiken. Als u bijvoorbeeld een variabele met de naam $label-width definieert, kunt u deze openen als $label_width en vice versa.



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow