Sass (Syntactically Awesome Stylesheets) est un langage de génération de feuilles de style
Le site: http://sass-lang.com/
Les feuilles de style CSS ne sont au fond que de longues listes de règles, chacune consistant en un sélecteur et quelques styles à appliquer.
Pour lire ce nouveau langage il nous faut télécharger RUBY; les utilisateurs de Mac ont CodeKit qui est un vrai bonheur.
- Dans Visual studio code, installer les extensions: Sass et Live Sass Compiler.
Avant de commencer:
- Ouvrir notre dossier de travail
- Dedans créer un dossier .vscode
- Dedans créer un fichier settings.json
- L’ouvrir et aller dans Live Sass Compile Config
- Editer en cliquant sur le crayon « LiveSassCompile.setting.formats«
- Changer : null par :« /css » (cela indiquera le nouveau chemin)
- Ouvrir le fichier .styles.scss et lancer watch Sass dans la barre bleu en bas.
En partant d’un projet existant:
- Créer un dossier de travail www et dedans
- Créer depuis Visual studio code le dossier .vscode et dedans le fichier settings.json (nous pouvons dupliquer celui de l’exercice précédant)
- Créer un dossier css et un dossier scss
- Dupliquer dans ce dossier scss le contenu du dossier css du projet existant
- Renommer le fichier styles_communs.css en styles_communs.scss
- Ouvrir le dossier www avec Visual studio code
- Ouvrir styles_communs.scss et lancer watch Sass (dans la bande bleu)
- Pour travailler ouvrir le fichier html et lancer l’aperçu go live
- Dans avec Visual studio code, nous pouvons supprimer tous les styles du dossier d’origine
- Supprimer aussi les liens de la page HTML et ne laisser que le lien pointant vers, ex:<link id= »lienStyles » rel= »stylesheet » href= »css/styles_01.css »>
- Renommer le styles commun en .scss en rajouter devant: _ afin ne pas régénérer un fichier à chaque fois.
- Renommer tous les fichiers styles.css en fichier styles.scss et placer dedans au tout début la directive: @import »styles_commun »; (qui fusionnera le scss vers le css avec aussi le style commun.
Nous pouvons travailler sur le fichier scss
- Les commentaire css: /* */ (ceci apparaîtrons dans le css.)
- Les commentaire scss: // (ceci n’apparaîtrons pas dans le css.)
Les variables
Il y a plusieurs possibilités, voici ici quelques exemple.
Déclarer les variables et fonctions.
Couleurs:
Les bases d’@extend
La directive @extend de Sass permet à un sélecteur d’hériter des styles d’un autre. C’est particulièrement utile dans une architecture basée sur les composants, en nous permettant de faire des variations à partir d’un composant.
Voici un cas très basique d’extension d’un sélecteur :
.message {
padding: .5em;
}
.message-error {
@extend .message;
}
Le résultat en CSS :
.message, .message-error {
padding: .5em;
}
Facile, non ? Bien sûr l’extension n’est pas limitée aux classes, vous pouvez étendre à peu près tous les sélecteurs (p.ex. a
), les IDs (p.ex. #id
) etc. et bien sûr les placeholders qui fonctionnent explicitement ainsi.
Média queris
h1 {
font-size:16px;
@media (min-width:992px){
font-size:24px
}
}
Mixin
Les Mixins sont des ensembles de propriétés ou de règles que vous pouvez inclure, ou “mixer”, dans d’autres règles. Vous les définissez en utilisant le mot clé @mixin
et vous les intégrez en utilisant le mot clé @include
.
Ici, un mixin qui applique des coins arrondis de 4px à un élément , suivies par la propriété standard border-radius de CSS3. J’ai également défini le rayon comme une variable, afin de le changer facilement si besoin :
@mixin rounded-corners {
$rounded-corner-radius: 4px;
border-radius: $rounded-corner-radius;
}
.button {
@include rounded-corners;
}






