image de chargement
Retour au glossaire

Sass (Syntactically Awesome Style Sheets)

Préprocesseur CSS qui étend le langage avec des variables, mixins, fonctions et héritage pour écrire des feuilles de style maintenables et modulaires.

Mis à jour le 22 janvier 2026

Sass est un préprocesseur CSS qui transforme du code écrit dans une syntaxe enrichie en CSS standard. Créé en 2006, il introduit des fonctionnalités de programmation comme les variables, l'imbrication, les mixins et les fonctions, permettant aux développeurs d'écrire des styles plus DRY (Don't Repeat Yourself) et maintenables. Sass se décline en deux syntaxes : SCSS (Sassy CSS) qui utilise des accolades et ressemble au CSS natif, et la syntaxe indentée originale plus concise.

Fondements

  • Préprocesseur qui compile vers du CSS standard compatible avec tous les navigateurs
  • Deux syntaxes disponibles : SCSS (.scss) avec accolades et Sass indenté (.sass) minimaliste
  • Écosystème mature avec compilateurs multiples (Dart Sass recommandé, LibSass déprécié)
  • Architecture modulaire basée sur des partials et imports pour organiser le code

Avantages

  • Variables natives permettant de centraliser les tokens de design (couleurs, espacements, typographie)
  • Mixins et fonctions pour réutiliser la logique CSS et réduire la duplication de code
  • Imbrication des sélecteurs reflétant la structure HTML pour une meilleure lisibilité
  • Opérations mathématiques et manipulation de couleurs intégrées au langage
  • Héritage avec @extend pour partager des styles entre sélecteurs
  • Écosystème riche avec bibliothèques (Bourbon, Compass) et frameworks (Bootstrap Sass)
  • Réduction significative du temps de développement et amélioration de la maintenabilité

Exemple concret

styles.scss
// Variables pour tokens de design
$primary-color: #3498db;
$secondary-color: #2ecc71;
$spacing-unit: 8px;
$border-radius: 4px;

// Mixin réutilisable
@mixin flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

// Fonction personnalisée
@function spacing($multiplier) {
  @return $spacing-unit * $multiplier;
}

// Imbrication et utilisation
.card {
  padding: spacing(3);
  border-radius: $border-radius;
  background-color: lighten($primary-color, 40%);

  &__header {
    @include flex-center;
    margin-bottom: spacing(2);
    color: $primary-color;

    &:hover {
      color: darken($primary-color, 10%);
    }
  }

  &__button {
    padding: spacing(2) spacing(4);
    background-color: $secondary-color;
    border: 2px solid darken($secondary-color, 10%);
    transition: all 0.3s ease;

    &--disabled {
      opacity: 0.5;
      cursor: not-allowed;
    }
  }
}

Ce code Sass compile en CSS standard optimisé. L'utilisation de variables centralisées facilite les modifications de thème, tandis que les mixins et fonctions éliminent la répétition et standardisent les patterns de design.

Mise en œuvre

  1. Installer Dart Sass via npm : `npm install -D sass` ou utiliser l'intégration dans votre bundler (Vite, Webpack)
  2. Créer une architecture de fichiers avec partials : _variables.scss, _mixins.scss, _base.scss organisés par fonctionnalité
  3. Définir vos tokens de design dans un fichier de variables centralisé incluant couleurs, typographie et espacements
  4. Compiler les fichiers .scss en CSS : `sass input.scss output.css` ou via watch mode pour le développement
  5. Configurer le source mapping pour faciliter le debugging en développement
  6. Intégrer dans votre pipeline de build avec minification et autoprefixer pour la production
  7. Documenter les conventions et patterns Sass dans votre équipe (nomenclature BEM recommandée)

Conseil professionnel

Avec l'arrivée des variables CSS natives (custom properties) et des fonctionnalités CSS modernes, évaluez si Sass reste nécessaire pour votre projet. Les variables CSS offrent l'avantage du runtime et de la cascade, tandis que Sass excelle pour la logique de build complexe, les fonctions mathématiques avancées et les grandes bases de code legacy. Une approche hybride combinant variables CSS pour les tokens dynamiques et Sass pour la logique de compilation peut être optimale.

Outils associés

  • PostCSS : alternative ou complément à Sass pour transformations CSS avec plugins
  • Stylelint : linter pour valider la qualité et cohérence du code Sass/CSS
  • Bootstrap : framework CSS disponible en version Sass pour personnalisation profonde
  • Bourbon : bibliothèque de mixins Sass légers et modernes
  • Vite/Webpack : bundlers avec support natif de Sass pour compilation automatique

Sass a révolutionné le développement CSS en introduisant des concepts de programmation essentiels pour gérer des feuilles de style complexes à l'échelle. Bien que CSS moderne intègre progressivement certaines fonctionnalités (variables, nesting), Sass reste pertinent pour les projets nécessitant une logique de compilation avancée, des systèmes de design sophistiqués et une organisation modulaire robuste. Son adoption massive dans l'industrie garantit un écosystème mature et une compatibilité étendue avec les outils de développement modernes.

L'argentestdéjàsurlatable.

En 1 heure, découvrez exactement combien vous perdez et comment le récupérer.

Agence de développement web, automatisation & IA

contact@peaklab.fr
Newsletter

Recevez nos conseils tech et business directement dans votre boîte mail.

Suivez-nous